CASM
AClustersApproachtoStatisticalMechanics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
CASM::RandomAccessEnumerator< ValueType, IsConst > Class Template Reference

#include <RandomAccessEnumerator.hh>

Detailed Description

template<typename ValueType, bool IsConst = true>
class CASM::RandomAccessEnumerator< ValueType, IsConst >

Generic random access enumerator.

Definition at line 18 of file RandomAccessEnumerator.hh.

Public Types

typedef
RandomAccessEnumeratorBase
< ValueType, IsConst >
::step_type 
step_type
 
typedef ValueType value_type
 
typedef
RandomAccessEnumeratorBase
< ValueType, IsConst >
::reference 
reference
 
typedef
RandomAccessEnumIterator
< ValueType, IsConst > 
iterator
 
typedef std::reverse_iterator
< iterator
reverse_iterator
 
typedef
RandomAccessEnumeratorBase
< ValueType, IsConst >
::size_type 
size_type
 

Public Member Functions

 RandomAccessEnumerator ()
 
 RandomAccessEnumerator (std::unique_ptr< RandomAccessEnumeratorBase< ValueType, IsConst > > e)
 
 RandomAccessEnumerator (const RandomAccessEnumerator &)=delete
 
RandomAccessEnumeratoroperator= (const RandomAccessEnumerator &)=delete
 
iterator begin ()
 
iterator end ()
 
reverse_iterator rbegin ()
 
reverse_iterator rend ()
 
reference current () const
 Access the current ObjectType by reference. More...
 
step_type step () const
 Increments with each enumerated object. More...
 
bool valid () const
 Returns false if enumeration is complete. More...
 
jsonParser source (step_type step) const
 
std::string name () const
 Derived enumerators must implement name. More...
 

Public Attributes

std::unique_ptr
< RandomAccessEnumeratorBase
< ValueType, IsConst > > 
ptr
 

Member Typedef Documentation

template<typename ValueType , bool IsConst = true>
typedef RandomAccessEnumIterator<ValueType, IsConst> CASM::RandomAccessEnumerator< ValueType, IsConst >::iterator

Definition at line 417 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
typedef RandomAccessEnumeratorBase<ValueType, IsConst>::reference CASM::RandomAccessEnumerator< ValueType, IsConst >::reference

Definition at line 416 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
typedef std::reverse_iterator<iterator> CASM::RandomAccessEnumerator< ValueType, IsConst >::reverse_iterator

Definition at line 418 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
typedef RandomAccessEnumeratorBase<ValueType, IsConst>::size_type CASM::RandomAccessEnumerator< ValueType, IsConst >::size_type

Definition at line 419 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
typedef RandomAccessEnumeratorBase<ValueType, IsConst>::step_type CASM::RandomAccessEnumerator< ValueType, IsConst >::step_type

Definition at line 414 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
typedef ValueType CASM::RandomAccessEnumerator< ValueType, IsConst >::value_type

Definition at line 415 of file RandomAccessEnumerator.hh.

Constructor & Destructor Documentation

template<typename ValueType , bool IsConst = true>
CASM::RandomAccessEnumerator< ValueType, IsConst >::RandomAccessEnumerator ( )
inline

Definition at line 421 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
CASM::RandomAccessEnumerator< ValueType, IsConst >::RandomAccessEnumerator ( std::unique_ptr< RandomAccessEnumeratorBase< ValueType, IsConst > >  e)
inline

Definition at line 423 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
CASM::RandomAccessEnumerator< ValueType, IsConst >::RandomAccessEnumerator ( const RandomAccessEnumerator< ValueType, IsConst > &  )
delete

Member Function Documentation

template<typename ValueType , bool IsConst = true>
iterator CASM::RandomAccessEnumerator< ValueType, IsConst >::begin ( )
inline

Definition at line 430 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
reference CASM::RandomAccessEnumerator< ValueType, IsConst >::current ( ) const
inline

Access the current ObjectType by reference.

Definition at line 447 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
iterator CASM::RandomAccessEnumerator< ValueType, IsConst >::end ( )
inline

Definition at line 434 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
std::string CASM::RandomAccessEnumerator< ValueType, IsConst >::name ( ) const
inline

Derived enumerators must implement name.

Definition at line 466 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
RandomAccessEnumerator& CASM::RandomAccessEnumerator< ValueType, IsConst >::operator= ( const RandomAccessEnumerator< ValueType, IsConst > &  )
delete
template<typename ValueType , bool IsConst = true>
reverse_iterator CASM::RandomAccessEnumerator< ValueType, IsConst >::rbegin ( )
inline

Definition at line 438 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
reverse_iterator CASM::RandomAccessEnumerator< ValueType, IsConst >::rend ( )
inline

Definition at line 442 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
jsonParser CASM::RandomAccessEnumerator< ValueType, IsConst >::source ( step_type  step) const
inline

Definition at line 461 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
step_type CASM::RandomAccessEnumerator< ValueType, IsConst >::step ( ) const
inline

Increments with each enumerated object.

Definition at line 452 of file RandomAccessEnumerator.hh.

template<typename ValueType , bool IsConst = true>
bool CASM::RandomAccessEnumerator< ValueType, IsConst >::valid ( ) const
inline

Returns false if enumeration is complete.

Definition at line 457 of file RandomAccessEnumerator.hh.

Member Data Documentation

template<typename ValueType , bool IsConst = true>
std::unique_ptr<RandomAccessEnumeratorBase<ValueType, IsConst> > CASM::RandomAccessEnumerator< ValueType, IsConst >::ptr

Definition at line 470 of file RandomAccessEnumerator.hh.


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