Unravel Engine C++ Reference
Loading...
Searching...
No Matches
moodycamel::details Namespace Reference

Classes

struct  _hash_32_or_64
 
struct  _hash_32_or_64< 1 >
 
struct  ConcurrentQueueProducerTypelessBase
 
struct  const_numeric_max
 
struct  hash_32_or_64
 
struct  identity
 
struct  is_trivially_destructible
 
union  max_align_t
 
struct  nomove_if
 
struct  nomove_if< false >
 
struct  static_is_lock_free
 
struct  static_is_lock_free< bool >
 
struct  static_is_lock_free< U * >
 
struct  static_is_lock_free_num
 
struct  static_is_lock_free_num< int >
 
struct  static_is_lock_free_num< long >
 
struct  static_is_lock_free_num< long long >
 
struct  static_is_lock_free_num< short >
 
struct  static_is_lock_free_num< signed char >
 
struct  thread_id_converter
 
struct  ThreadExitListener
 
class  ThreadExitNotifier
 

Typedefs

typedef std::uintptr_t thread_id_t
 
typedef std::max_align_t std_max_align_t
 

Functions

thread_id_t thread_id ()
 
static bool likely (bool x)
 
static bool unlikely (bool x)
 
static size_t hash_thread_id (thread_id_t id)
 
template<typename T >
static bool circular_less_than (T a, T b)
 
template<typename U >
static char * align_for (char *ptr)
 
template<typename T >
static T ceil_to_pow_2 (T x)
 
template<typename T >
static void swap_relaxed (std::atomic< T > &left, std::atomic< T > &right)
 
template<typename T >
static T const & nomove (T const &x)
 
template<typename It >
static auto deref_noexcept (It &it) MOODYCAMEL_NOEXCEPT -> decltype(*it)
 

Variables

static const thread_id_t invalid_thread_id = 0
 
static const thread_id_t invalid_thread_id2 = 1
 

Typedef Documentation

◆ std_max_align_t

typedef std::max_align_t moodycamel::details::std_max_align_t

Definition at line 303 of file concurrentqueue.h.

◆ thread_id_t

typedef std::uintptr_t moodycamel::details::thread_id_t

Definition at line 155 of file concurrentqueue.h.

Function Documentation

◆ align_for()

template<typename U >
static char * moodycamel::details::align_for ( char * ptr)
inlinestatic

Definition at line 486 of file concurrentqueue.h.

◆ ceil_to_pow_2()

template<typename T >
static T moodycamel::details::ceil_to_pow_2 ( T x)
inlinestatic

Definition at line 493 of file concurrentqueue.h.

◆ circular_less_than()

template<typename T >
static bool moodycamel::details::circular_less_than ( T a,
T b )
inlinestatic

Definition at line 477 of file concurrentqueue.h.

◆ deref_noexcept()

template<typename It >
static auto moodycamel::details::deref_noexcept ( It & it) -> decltype(*it)
inlinestatic

Definition at line 545 of file concurrentqueue.h.

◆ hash_thread_id()

static size_t moodycamel::details::hash_thread_id ( thread_id_t id)
inlinestatic

Definition at line 469 of file concurrentqueue.h.

◆ likely()

static bool moodycamel::details::likely ( bool x)
inlinestatic

Definition at line 281 of file concurrentqueue.h.

◆ nomove()

template<typename T >
static T const & moodycamel::details::nomove ( T const & x)
inlinestatic

Definition at line 518 of file concurrentqueue.h.

◆ swap_relaxed()

template<typename T >
static void moodycamel::details::swap_relaxed ( std::atomic< T > & left,
std::atomic< T > & right )
inlinestatic

Definition at line 510 of file concurrentqueue.h.

◆ thread_id()

thread_id_t moodycamel::details::thread_id ( )
inline

Definition at line 158 of file concurrentqueue.h.

◆ unlikely()

static bool moodycamel::details::unlikely ( bool x)
inlinestatic

Definition at line 282 of file concurrentqueue.h.

Variable Documentation

◆ invalid_thread_id

const thread_id_t moodycamel::details::invalid_thread_id = 0
static

Definition at line 156 of file concurrentqueue.h.

◆ invalid_thread_id2

const thread_id_t moodycamel::details::invalid_thread_id2 = 1
static

Definition at line 157 of file concurrentqueue.h.