Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::attributes::function< R > Class Template Reference

A class of an attribute that acquires its value from a third-party function object. More...

#include <function.hpp>

Inheritance diagram for boost::attributes::function< R >:
Collaboration diagram for boost::attributes::function< R >:

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

implget_impl () const BOOST_NOEXCEPT
 
void set_impl (intrusive_ptr< impl > p) BOOST_NOEXCEPT
 Sets the pointer to the factory implementation. More...
 

Detailed Description

template<typename R>
class boost::attributes::function< R >

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.

Member Typedef Documentation

template<typename R >
typedef R boost::attributes::function< R >::value_type

The attribute value type.

Constructor & Destructor Documentation

template<typename R >
template<typename T >
boost::attributes::function< R >::function ( T const &  fun)
inlineexplicit

Initializing constructor.

template<typename R >
boost::attributes::function< R >::function ( cast_source const &  source)
inlineexplicit

Constructor for casting support.

Member Function Documentation

attribute_value boost::attribute::get_value ( ) const
inherited
Returns
The actual attribute value. It shall not return empty values (exceptions shall be used to indicate errors).
bool boost::attribute::operator! ( ) const
inlineinherited

Verifies that the factory is not in empty state.

Verifies that the factory is in empty state

void boost::attribute::set_impl ( intrusive_ptr< impl p)
inlineprotectedinherited

Sets the pointer to the factory implementation.

Parameters
pPointer 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().

void boost::attribute::swap ( attribute that)
inlineinherited

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