Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
absl::Condition Class Reference

#include <mutex.h>

Public Member Functions

 Condition (bool(*func)(void *), void *arg)
 
template<typename T >
 Condition (bool(*func)(T *), T *arg)
 
template<typename T >
 Condition (T *object, bool(absl::internal::identity< T >::type::*method)())
 
template<typename T >
 Condition (const T *object, bool(absl::internal::identity< T >::type::*method)() const)
 
 Condition (const bool *cond)
 
template<typename T , typename E = decltype( static_cast<bool (T::*)() const>(&T::operator()))>
 Condition (const T *obj)
 
bool Eval () const
 

Static Public Member Functions

static bool GuaranteedEqual (const Condition *a, const Condition *b)
 

Static Public Attributes

static const Condition kTrue
 

Private Types

typedef bool(* InternalFunctionType) (void *arg)
 
typedef bool(* InternalMethodCallerType) (void *arg, InternalMethodType internal_method)
 
typedef bool(Condition::* InternalMethodType) ()
 

Private Member Functions

 Condition ()
 

Static Private Member Functions

static bool CallVoidPtrFunction (const Condition *)
 
template<typename T >
static bool CastAndCallFunction (const Condition *c)
 
template<typename T >
static bool CastAndCallMethod (const Condition *c)
 

Private Attributes

void * arg_
 
bool(* eval_ )(const Condition *)
 
InternalFunctionType function_
 
InternalMethodType method_
 

Detailed Description

Definition at line 645 of file mutex.h.

Member Typedef Documentation

typedef bool(* absl::Condition::InternalFunctionType) (void *arg)
private

Definition at line 722 of file mutex.h.

typedef bool(* absl::Condition::InternalMethodCallerType) (void *arg, InternalMethodType internal_method)
private

Definition at line 724 of file mutex.h.

typedef bool(Condition::* absl::Condition::InternalMethodType) ()
private

Definition at line 723 of file mutex.h.

Constructor & Destructor Documentation

absl::Condition::Condition ( bool(*)(void *)  func,
void *  arg 
)

Definition at line 294 of file mutex_nonprod.cc.

template<typename T >
absl::Condition::Condition ( bool(*)(T *)  func,
T *  arg 
)
inline

Definition at line 934 of file mutex.h.

template<typename T >
absl::Condition::Condition ( T *  object,
bool(absl::internal::identity< T >::type::*)()  method 
)
inline

Definition at line 941 of file mutex.h.

template<typename T >
absl::Condition::Condition ( const T *  object,
bool(absl::internal::identity< T >::type::*)() const  method 
)
inline

Definition at line 949 of file mutex.h.

absl::Condition::Condition ( const bool *  cond)
explicit

Definition at line 304 of file mutex_nonprod.cc.

template<typename T , typename E = decltype( static_cast<bool (T::*)() const>(&T::operator()))>
absl::Condition::Condition ( const T *  obj)
inlineexplicit

Definition at line 703 of file mutex.h.

absl::Condition::Condition ( )
private

Definition at line 291 of file mutex_nonprod.cc.

Member Function Documentation

bool absl::Condition::CallVoidPtrFunction ( const Condition c)
staticprivate

Definition at line 300 of file mutex_nonprod.cc.

template<typename T >
bool absl::Condition::CastAndCallFunction ( const Condition c)
staticprivate

Definition at line 926 of file mutex.h.

template<typename T >
bool absl::Condition::CastAndCallMethod ( const Condition c)
staticprivate

Definition at line 917 of file mutex.h.

bool absl::Condition::Eval ( ) const

Definition at line 311 of file mutex_nonprod.cc.

bool absl::Condition::GuaranteedEqual ( const Condition a,
const Condition b 
)
static

Definition at line 2712 of file mutex.cc.

Member Data Documentation

void* absl::Condition::arg_
private

Definition at line 730 of file mutex.h.

bool(* absl::Condition::eval_) (const Condition *)
private

Definition at line 727 of file mutex.h.

InternalFunctionType absl::Condition::function_
private

Definition at line 728 of file mutex.h.

const Condition absl::Condition::kTrue
static

Definition at line 707 of file mutex.h.

InternalMethodType absl::Condition::method_
private

Definition at line 729 of file mutex.h.


The documentation for this class was generated from the following files:


abseil_cpp
Author(s):
autogenerated on Tue Jun 18 2019 19:44:38