| 
|   | WaitableVariable () | 
|   | 
|   | WaitableVariable (const ValueType &value) | 
|   | 
| template<typename Container  = std::initializer_list<ValueType>, typename Callback  = DoNothing>  | 
| bool  | exchange (const Container &expected, const ValueType &v, const Callback &after_set_callback=DoNothing()) | 
|   | 
| template<typename Callback  = DoNothing>  | 
| bool  | exchange (const ValueType &expected, const ValueType &v, const Callback &after_set_callback=DoNothing()) | 
|   | 
| template<typename Callback  = DoNothing>  | 
| ValueType  | get (const Callback &after_get_callback=DoNothing()) | 
|   | 
| template<typename Callback  = DoNothing>  | 
| void  | set (const ValueType &v, const Callback &after_set_callback=DoNothing()) | 
|   | 
| template<typename Callback >  | 
| void  | change (const Callback &set_callback) | 
|   | 
| template<typename Callback  = DoNothing>  | 
| bool  | is (std::initializer_list< ValueType > expected_values, const Callback &after_is_callback=Callback()) | 
|   | 
| template<typename Callback  = DoNothing>  | 
| bool  | is (const ValueType &expected_value, const Callback &after_is_callback=Callback()) | 
|   | 
| template<typename Callback  = DoNothing>  | 
| void  | wait (const ValueType &expected_value, const Callback &callback=Callback()) | 
|   | 
| template<typename Callback  = DoNothing>  | 
| ValueType  | wait (std::initializer_list< ValueType > expected_values, const Callback &callback=Callback()) | 
|   | 
| template<class Rep , class Period , typename Callback  = DoNothing>  | 
| bool  | wait_for (const std::chrono::duration< Rep, Period > &rel_time, const ValueType &expected_value, const Callback &callback=Callback()) | 
|   | 
| template<class Rep , class Period , typename Callback  = DoNothing>  | 
| stdx::expected< ValueType, bool >  | wait_for (const std::chrono::duration< Rep, Period > &rel_time, std::initializer_list< ValueType > expected_values, const Callback &callback=Callback()) | 
|   |