A class of an attribute that acquires its value from a third-party function object. More...
#include <function.hpp>
Classes | |
class | impl |
Base class for factory implementation. More... | |
class | impl_template |
Factory implementation. More... | |
Public Types | |
typedef R | value_type |
The attribute value type. More... | |
Public Member Functions | |
template<typename T > | |
function (T const &fun) | |
Initializing constructor. More... | |
function (cast_source const &source) | |
Constructor for casting support. More... | |
bool | operator! () const BOOST_NOEXCEPT |
Verifies that the factory is not in empty state. More... | |
attribute_value | get_value () const |
void | swap (attribute &that) BOOST_NOEXCEPT |
The method swaps two factories (i.e. More... | |
Protected Member Functions | |
impl * | get_impl () const BOOST_NOEXCEPT |
void | set_impl (intrusive_ptr< impl > p) BOOST_NOEXCEPT |
Sets the pointer to the factory implementation. More... | |
A class of an attribute that acquires its value from a third-party function object.
The attribute calls a stored nullary function object to acquire each value. The result type of the function object is the attribute value type.
It is not recommended to use this class directly. Use make_function
convenience functions to construct the attribute instead.
typedef R boost::attributes::function< R >::value_type |
The attribute value type.
|
inlineexplicit |
Initializing constructor.
|
inlineexplicit |
Constructor for casting support.
|
inlineprotectedinherited |
References boost::intrusive_ptr< T >::get().
Referenced by boost::attribute_cast(), boost::attributes::constant< process_id >::get(), boost::attributes::mutable_constant< channel_type >::get_impl(), and boost::attributes::mutable_constant< T, void, void, void >::get_impl().
|
inherited |
|
inlineinherited |
Verifies that the factory is not in empty state.
Verifies that the factory is in empty state
|
inlineprotectedinherited |
Sets the pointer to the factory implementation.
p | Pointer to the implementation. Must not be NULL . |
References boost::multiprecision::backends::p, and boost::intrusive_ptr< T >::swap().
Referenced by boost::attributes::counter< T >::counter().
|
inlineinherited |
The method swaps two factories (i.e.
their implementations).
References boost::intrusive_ptr< T >::swap().
Referenced by boost::sources::aux::severity_level< severity_level >::operator=(), and boost::sources::basic_severity_logger< BaseT, LevelT >::swap_unlocked().