LLVM  7.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 324 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 328 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 341 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 362 of file YAMLParser.h.

◆ operator*()

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

Definition at line 335 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 366 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 330 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 353 of file YAMLParser.h.

References assert().


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