LLVM  6.0.0svn
Public Member Functions | List of all members
llvm::yaml::basic_collection_iterator< BaseT, ValueT > Class Template Reference

This is an iterator abstraction over YAML collections shared by both sequences and maps. More...

#include "llvm/Support/YAMLParser.h"

Inheritance diagram for llvm::yaml::basic_collection_iterator< BaseT, ValueT >:
Inheritance graph
[legend]
Collaboration diagram for llvm::yaml::basic_collection_iterator< BaseT, ValueT >:
Collaboration graph
[legend]

Public Member Functions

 basic_collection_iterator ()=default
 
 basic_collection_iterator (BaseT *B)
 
ValueToperator-> () const
 
ValueToperator* () const
 
 operator ValueT * () const
 
bool operator== (const basic_collection_iterator &Other) const
 Note on EqualityComparable: More...
 
bool operator!= (const basic_collection_iterator &Other) const
 
basic_collection_iteratoroperator++ ()
 

Detailed Description

template<class BaseT, class ValueT>
class llvm::yaml::basic_collection_iterator< BaseT, ValueT >

This is an iterator abstraction over YAML collections shared by both sequences and maps.

BaseT must have a ValueT* member named CurrentEntry and a member function increment() which must set CurrentEntry to 0 to create an end iterator.

Definition at line 314 of file YAMLParser.h.

Constructor & Destructor Documentation

◆ basic_collection_iterator() [1/2]

template<class BaseT , class ValueT >
llvm::yaml::basic_collection_iterator< BaseT, ValueT >::basic_collection_iterator ( )
default

◆ basic_collection_iterator() [2/2]

template<class BaseT , class ValueT >
llvm::yaml::basic_collection_iterator< BaseT, ValueT >::basic_collection_iterator ( BaseT *  B)
inline

Definition at line 318 of file YAMLParser.h.

Member Function Documentation

◆ operator ValueT *()

template<class BaseT , class ValueT >
llvm::yaml::basic_collection_iterator< BaseT, ValueT >::operator ValueT * ( ) const
inline

Definition at line 331 of file YAMLParser.h.

References assert().

◆ operator!=()

template<class BaseT , class ValueT >
bool llvm::yaml::basic_collection_iterator< BaseT, ValueT >::operator!= ( const basic_collection_iterator< BaseT, ValueT > &  Other) const
inline

Definition at line 352 of file YAMLParser.h.

◆ operator*()

template<class BaseT , class ValueT >
ValueT& llvm::yaml::basic_collection_iterator< BaseT, ValueT >::operator* ( ) const
inline

Definition at line 325 of file YAMLParser.h.

References assert().

◆ operator++()

template<class BaseT , class ValueT >
basic_collection_iterator& llvm::yaml::basic_collection_iterator< BaseT, ValueT >::operator++ ( )
inline

Definition at line 356 of file YAMLParser.h.

References assert().

◆ operator->()

template<class BaseT , class ValueT >
ValueT* llvm::yaml::basic_collection_iterator< BaseT, ValueT >::operator-> ( ) const
inline

Definition at line 320 of file YAMLParser.h.

References assert().

◆ operator==()

template<class BaseT , class ValueT >
bool llvm::yaml::basic_collection_iterator< BaseT, ValueT >::operator== ( const basic_collection_iterator< BaseT, ValueT > &  Other) const
inline

Note on EqualityComparable:

The iterator is not re-entrant, it is meant to be used for parsing YAML on-demand Once iteration started - it can point only to one entry at a time hence Base.CurrentEntry and Other.Base.CurrentEntry are equal iff Base and Other.Base are equal.

Definition at line 343 of file YAMLParser.h.

References assert().


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