Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl Class Reference

Factory implementation. More...

#include <mutable_constant.hpp>

Inheritance diagram for boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl:
Collaboration diagram for boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl:

Public Member Functions

 impl (value_type const &value)
 Initializing constructor. More...
 
 impl (BOOST_RV_REF(value_type) value)
 Initializing constructor. More...
 
attribute_value get_value ()
 
void set (value_type const &value)
 
void set (BOOST_RV_REF(value_type) value)
 
value_type get () const
 

Static Public Member Functions

static BOOST_LOG_API void * operator new (std::size_t size)
 
static BOOST_LOG_API void operator delete (void *p, std::size_t size) BOOST_NOEXCEPT
 

Detailed Description

template<typename T, typename MutexT = void, typename ScopedWriteLockT = typename mpl::if_c< boost::log::aux::is_exclusively_lockable< MutexT >::value, boost::log::aux::exclusive_lock_guard< MutexT >, void >::type, typename ScopedReadLockT = typename mpl::if_c< boost::log::aux::is_shared_lockable< MutexT >::value, boost::log::aux::shared_lock_guard< MutexT >, ScopedWriteLockT >::type>
class boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl

Factory implementation.

Constructor & Destructor Documentation

template<typename T, typename MutexT = void, typename ScopedWriteLockT = typename mpl::if_c< boost::log::aux::is_exclusively_lockable< MutexT >::value, boost::log::aux::exclusive_lock_guard< MutexT >, void >::type, typename ScopedReadLockT = typename mpl::if_c< boost::log::aux::is_shared_lockable< MutexT >::value, boost::log::aux::shared_lock_guard< MutexT >, ScopedWriteLockT >::type>
boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl::impl ( value_type const &  value)
inlineexplicit

Initializing constructor.

template<typename T, typename MutexT = void, typename ScopedWriteLockT = typename mpl::if_c< boost::log::aux::is_exclusively_lockable< MutexT >::value, boost::log::aux::exclusive_lock_guard< MutexT >, void >::type, typename ScopedReadLockT = typename mpl::if_c< boost::log::aux::is_shared_lockable< MutexT >::value, boost::log::aux::shared_lock_guard< MutexT >, ScopedWriteLockT >::type>
boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl::impl ( BOOST_RV_REF(value_type value)
inlineexplicit

Initializing constructor.

Member Function Documentation

template<typename T, typename MutexT = void, typename ScopedWriteLockT = typename mpl::if_c< boost::log::aux::is_exclusively_lockable< MutexT >::value, boost::log::aux::exclusive_lock_guard< MutexT >, void >::type, typename ScopedReadLockT = typename mpl::if_c< boost::log::aux::is_shared_lockable< MutexT >::value, boost::log::aux::shared_lock_guard< MutexT >, ScopedWriteLockT >::type>
value_type boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl::get ( ) const
inline
template<typename T, typename MutexT = void, typename ScopedWriteLockT = typename mpl::if_c< boost::log::aux::is_exclusively_lockable< MutexT >::value, boost::log::aux::exclusive_lock_guard< MutexT >, void >::type, typename ScopedReadLockT = typename mpl::if_c< boost::log::aux::is_shared_lockable< MutexT >::value, boost::log::aux::shared_lock_guard< MutexT >, ScopedWriteLockT >::type>
attribute_value boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl::get_value ( )
inlinevirtual
Returns
The actual attribute value. It shall not return empty values (exceptions shall be used to indicate errors).

Implements boost::attribute::impl.

References boost::spirit::detail::attribute_value(), and boost::lock().

static BOOST_LOG_API void boost::attribute::impl::operator delete ( void *  p,
std::size_t  size 
)
staticinherited
static BOOST_LOG_API void* boost::attribute::impl::operator new ( std::size_t  size)
staticinherited
template<typename T, typename MutexT = void, typename ScopedWriteLockT = typename mpl::if_c< boost::log::aux::is_exclusively_lockable< MutexT >::value, boost::log::aux::exclusive_lock_guard< MutexT >, void >::type, typename ScopedReadLockT = typename mpl::if_c< boost::log::aux::is_shared_lockable< MutexT >::value, boost::log::aux::shared_lock_guard< MutexT >, ScopedWriteLockT >::type>
void boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl::set ( value_type const &  value)
inline
template<typename T, typename MutexT = void, typename ScopedWriteLockT = typename mpl::if_c< boost::log::aux::is_exclusively_lockable< MutexT >::value, boost::log::aux::exclusive_lock_guard< MutexT >, void >::type, typename ScopedReadLockT = typename mpl::if_c< boost::log::aux::is_shared_lockable< MutexT >::value, boost::log::aux::shared_lock_guard< MutexT >, ScopedWriteLockT >::type>
void boost::attributes::mutable_constant< T, MutexT, ScopedWriteLockT, ScopedReadLockT >::impl::set ( BOOST_RV_REF(value_type value)
inline

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