clang  6.0.0svn
Public Member Functions | Protected Member Functions | List of all members
clang::IdentifierIterator Class Referenceabstract

An iterator that walks over all of the known identifiers in the lookup table. More...

#include "clang/Basic/IdentifierTable.h"

Inheritance diagram for clang::IdentifierIterator:
Inheritance graph
[legend]

Public Member Functions

 IdentifierIterator (const IdentifierIterator &)=delete
 
IdentifierIteratoroperator= (const IdentifierIterator &)=delete
 
virtual ~IdentifierIterator ()
 
virtual StringRef Next ()=0
 Retrieve the next string in the identifier table and advances the iterator for the following string. More...
 

Protected Member Functions

 IdentifierIterator ()=default
 

Detailed Description

An iterator that walks over all of the known identifiers in the lookup table.

Since this iterator uses an abstract interface via virtual functions, it uses an object-oriented interface rather than the more standard C++ STL iterator interface. In this OO-style iteration, the single function Next() provides dereference, advance, and end-of-sequence checking in a single operation. Subclasses of this iterator type will provide the actual functionality.

Definition at line 417 of file IdentifierTable.h.

Constructor & Destructor Documentation

◆ IdentifierIterator() [1/2]

clang::IdentifierIterator::IdentifierIterator ( )
protecteddefault

◆ IdentifierIterator() [2/2]

clang::IdentifierIterator::IdentifierIterator ( const IdentifierIterator )
delete

◆ ~IdentifierIterator()

IdentifierIterator::~IdentifierIterator ( )
virtual

Definition at line 57 of file IdentifierTable.cpp.

Member Function Documentation

◆ Next()

virtual StringRef clang::IdentifierIterator::Next ( )
pure virtual

Retrieve the next string in the identifier table and advances the iterator for the following string.

Returns
The next string in the identifier table. If there is no such string, returns an empty StringRef.

Implemented in clang::ASTIdentifierIterator.

◆ operator=()

IdentifierIterator& clang::IdentifierIterator::operator= ( const IdentifierIterator )
delete

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