clang  7.0.0svn
Public Types | Public Member Functions | Public Attributes | Friends | List of all members
clang::IdentifierResolver::iterator Class Reference

iterator - Iterate over the decls of a specified declaration name. More...

#include "clang/Sema/IdentifierResolver.h"

Collaboration diagram for clang::IdentifierResolver::iterator:
Collaboration graph
[legend]

Public Types

using value_type = NamedDecl *
 
using reference = NamedDecl *
 
using pointer = NamedDecl *
 
using iterator_category = std::input_iterator_tag
 
using difference_type = std::ptrdiff_t
 
using BaseIter = IdDeclInfo::DeclsTy::iterator
 

Public Member Functions

 iterator (NamedDecl *D)
 A single NamedDecl. (Ptr & 0x1 == 0) More...
 
 iterator (BaseIter I)
 A IdDeclInfo::DeclsTy::iterator that walks or not the parent declaration contexts depending on 'LookInParentCtx'. More...
 
bool isIterator () const
 
BaseIter getIterator () const
 
void incrementSlowCase ()
 
 iterator ()=default
 
NamedDecloperator* () const
 
bool operator== (const iterator &RHS) const
 
bool operator!= (const iterator &RHS) const
 
iteratoroperator++ ()
 

Public Attributes

uintptr_t Ptr = 0
 Ptr - There are 2 forms that 'Ptr' represents: 1) A single NamedDecl. More...
 

Friends

class IdentifierResolver
 

Detailed Description

iterator - Iterate over the decls of a specified declaration name.

It will walk or not the parent declaration contexts depending on how it was instantiated.

Definition at line 70 of file IdentifierResolver.h.

Member Typedef Documentation

◆ BaseIter

using clang::IdentifierResolver::iterator::BaseIter = IdDeclInfo::DeclsTy::iterator

Definition at line 85 of file IdentifierResolver.h.

◆ difference_type

Definition at line 78 of file IdentifierResolver.h.

◆ iterator_category

Definition at line 77 of file IdentifierResolver.h.

◆ pointer

Definition at line 76 of file IdentifierResolver.h.

◆ reference

Definition at line 75 of file IdentifierResolver.h.

◆ value_type

Definition at line 74 of file IdentifierResolver.h.

Constructor & Destructor Documentation

◆ iterator() [1/3]

clang::IdentifierResolver::iterator::iterator ( NamedDecl D)
inline

A single NamedDecl. (Ptr & 0x1 == 0)

Definition at line 88 of file IdentifierResolver.h.

◆ iterator() [2/3]

clang::IdentifierResolver::iterator::iterator ( BaseIter  I)
inline

A IdDeclInfo::DeclsTy::iterator that walks or not the parent declaration contexts depending on 'LookInParentCtx'.

Definition at line 95 of file IdentifierResolver.h.

◆ iterator() [3/3]

clang::IdentifierResolver::iterator::iterator ( )
default

Member Function Documentation

◆ getIterator()

BaseIter clang::IdentifierResolver::iterator::getIterator ( ) const
inline

Definition at line 101 of file IdentifierResolver.h.

References IteratorComparison::isIterator().

◆ incrementSlowCase()

void IdentifierResolver::iterator::incrementSlowCase ( )

◆ isIterator()

bool clang::IdentifierResolver::iterator::isIterator ( ) const
inline

Definition at line 99 of file IdentifierResolver.h.

◆ operator!=()

bool clang::IdentifierResolver::iterator::operator!= ( const iterator RHS) const
inline

Definition at line 121 of file IdentifierResolver.h.

References Ptr.

◆ operator*()

NamedDecl* clang::IdentifierResolver::iterator::operator* ( ) const
inline

Definition at line 111 of file IdentifierResolver.h.

References IteratorComparison::isIterator().

◆ operator++()

iterator& clang::IdentifierResolver::iterator::operator++ ( )
inline

◆ operator==()

bool clang::IdentifierResolver::iterator::operator== ( const iterator RHS) const
inline

Definition at line 118 of file IdentifierResolver.h.

References Ptr.

Friends And Related Function Documentation

◆ IdentifierResolver

friend class IdentifierResolver
friend

Definition at line 72 of file IdentifierResolver.h.

Member Data Documentation

◆ Ptr

uintptr_t clang::IdentifierResolver::iterator::Ptr = 0

Ptr - There are 2 forms that 'Ptr' represents: 1) A single NamedDecl.

(Ptr & 0x1 == 0) 2) A IdDeclInfo::DeclsTy::iterator that traverses only the decls of the same declaration context. (Ptr & 0x1 == 0x1)

Definition at line 84 of file IdentifierResolver.h.

Referenced by operator!=(), and operator==().


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