|
Mercury Currency Engine
|
#include <chan.hpp>


Public Member Functions | |
| chan (const chan< T > &rhs) | |
| chan (chan< T > &&rhs) | |
| template<typename CHANNEL > | |
| void | construct (CHANNEL &&ch) const |
| void | construct () const |
| construct unbuffered channel context | |
| void * | context () const |
| retrieve internal context pointer | |
| const std::type_info & | type_info () const |
| retrieve type_info | |
| const std::type_info & | context_type_info () const |
| template<typename CHANNEL > | |
| CHANNEL | cast () const |
| void | close () const |
| close channel | |
| bool | closed () const |
| report if channel is closed | |
| bool | send (const T &s) const |
| send a copy of data through channel | |
| bool | send (T &&s) const |
| move data through channel | |
| bool | recv (T &r) const |
| retrieve data from channel | |
| result | try_send (const T &s) const |
| attempt to send a copy of data through channel | |
| result | try_send (T &&s) const |
| attempt to move data through channel | |
| result | try_recv (T &s) const |
| attempt to retrieve data from channel | |
| void | assign (const chan< T > &rhs) const |
| copy internal context of argument channel | |
| void | assign (chan< T > &&rhs) const |
| move internal context of argument channel | |
| const chan< T > & | operator= (const chan< T > &rhs) const |
| lvalue assign channel context | |
| const chan< T > & | operator= (chan< T > &&rhs) const |
| rvalue assign channel context | |
Public Member Functions inherited from mce::base_channel< T > | |
| base_channel (const base_channel< T > *rhs_bc) | |
| iterator context constructor | |
| iterator | begin () const |
| iterator to the current beginning of the channel | |
| iterator | end () const |
| default iterator == end() | |
Public Member Functions inherited from mce::channel_operators< T, chan< T > > | |
| channel_operators (chan< T > *rhs_ch) | |
| context constructor | |
| virtual | ~channel_operators () |
| operator bool () const | |
| return whether channel has a shared context pointer | |
| const chan< T > & | operator= (const chan< T > &rhs) const |
| lvalue assign channel context | |
| const chan< T > & | operator= (chan< T > &&rhs) const |
| rvalue assign channel context | |
| bool | operator== (const chan< T > &rhs) const |
| lvalue channel context comparison | |
| bool | operator== (chan< T > &&rhs) const |
| rvalue channel context comparison | |
| bool | operator!= (const chan< T > &rhs) const |
| lvalue channel context not comparison | |
| bool | operator!= (chan< T > &&rhs) const |
| rvalue channel context not comparison | |
| bool | operator< (const chan< T > &rhs) const |
| bool | operator< (chan< T > &&rhs) const |
| bool | operator<= (const chan< T > &rhs) const |
| bool | operator<= (chan< T > &&rhs) const |
| bool | operator> (const chan< T > &rhs) const |
| bool | operator> (chan< T > &&rhs) const |
| bool | operator>= (const chan< T > &rhs) const |
| bool | operator>= (chan< T > &&rhs) const |
Additional Inherited Members | |
Public Types inherited from mce::base_channel< T > | |
| typedef T | value_type |
| template type for channel | |
Static Public Member Functions inherited from mce::channel_operators< T, chan< T > > | |
| static chan< T > | make (As &&... as) |
A wrapper object which can represent any object which implements base_channel interface.
Cast base_channel context to templated channel and return the result.
Operation was a success if the resulting channel is initialized, a non-default constructed version of the channel. An initialized channel will return non-NULL when context() is called.
|
inline |
unique mechanism for constructing a chan<T> object using any object which implements base_channel<T,chan<T>>
|
inline |
Retrieve type_info of underlying context. Because chan<T> is a wrapper to other channels, this may fail if chan<T> is uninitialized at the time of call.