The Battle for Wesnoth  1.19.0-dev
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
schema_validation::wml_tag::iterator< T, Map > Class Template Reference
Inheritance diagram for schema_validation::wml_tag::iterator< T, Map >:

Public Member Functions

 iterator (const wml_tag &base_tag, const config &match)
 
 iterator ()
 

Private Member Functions

void init (const wml_tag &base_tag)
 
void ensure_valid_or_end ()
 
void increment ()
 
void push_new_tag_conditions (const wml_tag &tag)
 
bool equal (const iterator< T, Map > &other) const
 
iterator< T, Map >::reference dereference () const
 

Private Attributes

std::queue< const wml_tag * > condition_queue
 
Map::const_iterator current
 
std::reference_wrapper< const configmatch
 

Friends

class boost::iterator_core_access
 

Detailed Description

template<typename T, typename Map = std::map<std::string, T>>
class schema_validation::wml_tag::iterator< T, Map >

Definition at line 58 of file tag.hpp.

Constructor & Destructor Documentation

◆ iterator() [1/2]

template<typename T , typename Map = std::map<std::string, T>>
schema_validation::wml_tag::iterator< T, Map >::iterator ( const wml_tag base_tag,
const config match 
)
inline

◆ iterator() [2/2]

template<typename T , typename Map = std::map<std::string, T>>
schema_validation::wml_tag::iterator< T, Map >::iterator ( )
inline

Definition at line 72 of file tag.hpp.

Member Function Documentation

◆ dereference()

template<typename T , typename Map = std::map<std::string, T>>
iterator<T,Map>::reference schema_validation::wml_tag::iterator< T, Map >::dereference ( ) const
inlineprivate

Definition at line 102 of file tag.hpp.

References schema_validation::wml_tag::iterator< T, Map >::current.

◆ ensure_valid_or_end()

template<typename T , typename Map = std::map<std::string, T>>
void schema_validation::wml_tag::super_iterator::ensure_valid_or_end ( )
private

◆ equal()

template<typename T , typename Map = std::map<std::string, T>>
bool schema_validation::wml_tag::iterator< T, Map >::equal ( const iterator< T, Map > &  other) const
inlineprivate

◆ increment()

template<typename T , typename Map = std::map<std::string, T>>
void schema_validation::wml_tag::iterator< T, Map >::increment ( )
inlineprivate

◆ init()

template<typename T , typename Map = std::map<std::string, T>>
void schema_validation::wml_tag::super_iterator::init ( const wml_tag base_tag)
private

◆ push_new_tag_conditions()

template<typename T , typename Map = std::map<std::string, T>>
void schema_validation::wml_tag::iterator< T, Map >::push_new_tag_conditions ( const wml_tag tag)
inlineprivate

Friends And Related Function Documentation

◆ boost::iterator_core_access

template<typename T , typename Map = std::map<std::string, T>>
friend class boost::iterator_core_access
friend

Definition at line 74 of file tag.hpp.

Member Data Documentation

◆ condition_queue

template<typename T , typename Map = std::map<std::string, T>>
std::queue<const wml_tag*> schema_validation::wml_tag::iterator< T, Map >::condition_queue
private

◆ current

template<typename T , typename Map = std::map<std::string, T>>
Map::const_iterator schema_validation::wml_tag::iterator< T, Map >::current
private

◆ match

template<typename T , typename Map = std::map<std::string, T>>
std::reference_wrapper<const config> schema_validation::wml_tag::iterator< T, Map >::match
private

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