uvcc
libuv C++ bindings
Utility structures and definitions

The utility definitions to be used throughout the library. More...

Subcategories

 Byte order conversion
 
 Network-related structures initialization
 
 Dealing with type lists and parameter packs
 

Classes

struct  uv::default_delete< _T_ >
 The analogue of the std::default_delete. More...
 
struct  uv::default_destroy< _T_ >
 The analogue of the uv::default_delete but for the type destructor only. More...
 
struct  uv::is_one_of< _T_, _Ts_ >
 Checks if a type _T_ belongs to a type list _Ts_. More...
 
class  uv::ref_count
 A reference counter with atomic increment/decrement. More...
 
struct  uv::adopt_ref_t
 The type of the adopt_ref constant. More...
 
class  uv::ref_guard< _T_ >
 A scoped reference counting guard. More...
 
class  uv::spinlock
 A simple spinlock mutex built around std::atomic_flag. More...
 
class  uv::aligned_storage< _LEN_, _ALIGN_ >
 A wrapper around std::aligned_storage< _LEN_, _ALIGN_ >::type that simplifies initializing the provided storage space, getting from it, setting it to, and automatic destroying it from objects of any type fitting to the given size and alignment requirements. More...
 
class  uv::type_storage< _T_ >
 A wrapper providing the feature of being a standard layout type for the given type _T_. More...
 
class  uv::union_storage< _Ts_ >
 A tagged union that provide a storage space being a standard layout type suited for all its type variants specified in the type list _Ts_. More...
 
class  uv::any_ptr
 The analogue of std::unique_ptr that managed object type is not defined at compile time and can be varied. More...
 

Typedefs

template<typename... _Ts_>
using uv::aligned_union = std::aligned_storage< greatest(sizeof(_Ts_)...), greatest(alignof(_Ts_)...) >
 A mimic of STL's std::aligned_union missed in gcc 4.9.2.
 

Variables

constexpr const adopt_ref_t uv::adopt_ref
 The tag to be used to prevent ref_guard constructor from increasing reference count of the protected object.
 

Detailed Description

The utility definitions to be used throughout the library.