Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::chrono::ios_state_not_null_ptr< Final, T > Class Template Reference

ios_state_not_null_ptr is a non null variant of ios_state_ptr. More...

#include <ios_base_state_ptr.hpp>

Inheritance diagram for boost::chrono::ios_state_not_null_ptr< Final, T >:
Collaboration diagram for boost::chrono::ios_state_not_null_ptr< Final, T >:

Public Types

typedef T element_type
 The pointee type. More...
 

Public Member Functions

 ios_state_not_null_ptr (std::ios_base &ios)
 
 ~ios_state_not_null_ptr ()
 
void reset (T *new_value) BOOST_NOEXCEPT
 
T const * get () const BOOST_NOEXCEPT
 Allocates the index if not already done. More...
 
Tget () BOOST_NOEXCEPT
 Allocates the index if not already done. More...
 
Toperator-> () BOOST_NOEXCEPT
 as if return get(); More...
 
T const * operator-> () const BOOST_NOEXCEPT
 as if return get(); More...
 
Toperator* () BOOST_NOEXCEPT
 as if return *get(); More...
 
T const & operator* () const BOOST_NOEXCEPT
 as if return *get(); More...
 
Trelease () BOOST_NOEXCEPT
 reset the current pointer after storing in a temporary variable the pointer to the current state. More...
 
 operator bool () const BOOST_NOEXCEPT
 Explicit conversion to bool. More...
 
std::ios_base & getios () BOOST_NOEXCEPT
 
std::ios_base & getios () const BOOST_NOEXCEPT
 
 operator std::ios_base & () BOOST_NOEXCEPT
 Implicit conversion to the ios_base. More...
 
 operator std::ios_base & () const BOOST_NOEXCEPT
 Implicit conversion to the ios_base const. More...
 

Protected Attributes

std::ios_base & ios_
 

Detailed Description

template<typename Final, typename T>
class boost::chrono::ios_state_not_null_ptr< Final, T >

ios_state_not_null_ptr is a non null variant of ios_state_ptr.

T T must be DefaultConstructible and HeapAllocatable

Member Typedef Documentation

template<typename Final , typename T >
typedef T boost::chrono::ios_state_ptr< Final, T >::element_type
inherited

The pointee type.

Constructor & Destructor Documentation

template<typename Final , typename T >
boost::chrono::ios_state_not_null_ptr< Final, T >::ios_state_not_null_ptr ( std::ios_base &  ios)
inlineexplicit
template<typename Final , typename T >
boost::chrono::ios_state_not_null_ptr< Final, T >::~ios_state_not_null_ptr ( )
inline

Member Function Documentation

template<typename Final , typename T >
T const* boost::chrono::ios_state_ptr< Final, T >::get ( ) const
inlineinherited

Allocates the index if not already done.

Registers the callback responsible of maintaining the state pointer coherency, if not already done. Retrieves the associated ios pointer

Returns
the retrieved pointer statically casted to const.

References boost::chrono::ios_state_ptr< Final, T >::ios_, and T.

template<typename Final , typename T >
T* boost::chrono::ios_state_ptr< Final, T >::get ( )
inlineinherited

Allocates the index if not already done.

Registers the callback responsible of maintaining the state pointer coherency, if not already done. Retrieves the associated ios pointer

Returns
the retrieved pointer.

References boost::chrono::ios_state_ptr< Final, T >::ios_, and T.

template<typename Final , typename T >
std::ios_base& boost::chrono::ios_state_ptr< Final, T >::getios ( )
inlineinherited
template<typename Final , typename T >
std::ios_base& boost::chrono::ios_state_ptr< Final, T >::getios ( ) const
inlineinherited
template<typename Final , typename T >
boost::chrono::ios_state_ptr< Final, T >::operator bool ( ) const
inlineexplicitinherited

Explicit conversion to bool.

template<typename Final , typename T >
boost::chrono::ios_state_ptr< Final, T >::operator std::ios_base & ( )
inlineinherited

Implicit conversion to the ios_base.

References boost::chrono::ios_state_ptr< Final, T >::ios_.

template<typename Final , typename T >
boost::chrono::ios_state_ptr< Final, T >::operator std::ios_base & ( ) const
inlineinherited

Implicit conversion to the ios_base const.

References boost::chrono::ios_state_ptr< Final, T >::ios_.

template<typename Final , typename T >
T& boost::chrono::ios_state_ptr< Final, T >::operator* ( )
inlineinherited

as if return *get();

Returns
a reference to the retrieved state. The behavior is undefined if get()==0.
template<typename Final , typename T >
T const& boost::chrono::ios_state_ptr< Final, T >::operator* ( ) const
inlineinherited

as if return *get();

Returns
a reference to the retrieved state. The behavior is undefined if get()==0.
template<typename Final , typename T >
T* boost::chrono::ios_state_ptr< Final, T >::operator-> ( )
inlineinherited

as if return get();

Returns
the retrieved pointer.
template<typename Final , typename T >
T const* boost::chrono::ios_state_ptr< Final, T >::operator-> ( ) const
inlineinherited

as if return get();

Returns
the retrieved pointer.
template<typename Final , typename T >
T* boost::chrono::ios_state_ptr< Final, T >::release ( )
inlineinherited

reset the current pointer after storing in a temporary variable the pointer to the current state.

Returns
the stored state pointer.

References boost::chrono::ios_state_ptr< Final, T >::reset(), and T.

template<typename Final , typename T >
void boost::chrono::ios_state_not_null_ptr< Final, T >::reset ( T new_value)
inline

Member Data Documentation


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