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

#include <IdentifierResolver.h>

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

Public Types

typedef NamedDeclvalue_type
 
typedef NamedDeclreference
 
typedef NamedDeclpointer
 
typedef std::input_iterator_tag iterator_category
 
typedef std::ptrdiff_t difference_type
 
typedef
IdDeclInfo::DeclsTy::iterator 
BaseIter
 

Public Member Functions

 iterator (NamedDecl *D)
 A single NamedDecl. (Ptr & 0x1 == 0) More...
 
 iterator (BaseIter I)
 
bool isIterator () const
 
BaseIter getIterator () const
 
void incrementSlowCase ()
 
 iterator ()
 
NamedDecloperator* () const
 
bool operator== (const iterator &RHS) const
 
bool operator!= (const iterator &RHS) const
 
iteratoroperator++ ()
 
uintptr_t getAsOpaqueValue () const
 

Static Public Member Functions

static iterator getFromOpaqueValue (uintptr_t P)
 

Public Attributes

uintptr_t Ptr
 

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 68 of file IdentifierResolver.h.

Member Typedef Documentation

typedef IdDeclInfo::DeclsTy::iterator clang::IdentifierResolver::iterator::BaseIter

Definition at line 83 of file IdentifierResolver.h.

Definition at line 74 of file IdentifierResolver.h.

Definition at line 73 of file IdentifierResolver.h.

Definition at line 72 of file IdentifierResolver.h.

Definition at line 71 of file IdentifierResolver.h.

Definition at line 70 of file IdentifierResolver.h.

Constructor & Destructor Documentation

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

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

Definition at line 86 of file IdentifierResolver.h.

References Ptr.

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 92 of file IdentifierResolver.h.

References Ptr.

clang::IdentifierResolver::iterator::iterator ( )
inline

Definition at line 107 of file IdentifierResolver.h.

Member Function Documentation

uintptr_t clang::IdentifierResolver::iterator::getAsOpaqueValue ( ) const
inline

Definition at line 132 of file IdentifierResolver.h.

References Ptr.

static iterator clang::IdentifierResolver::iterator::getFromOpaqueValue ( uintptr_t  P)
inlinestatic

Definition at line 134 of file IdentifierResolver.h.

References P, Ptr, and clang::Result.

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

Definition at line 98 of file IdentifierResolver.h.

References isIterator(), and Ptr.

Referenced by clang::IdentifierResolver::InsertDeclAfter(), and operator*().

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

Definition at line 96 of file IdentifierResolver.h.

References Ptr.

Referenced by getIterator(), clang::IdentifierResolver::InsertDeclAfter(), operator*(), and operator++().

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

Definition at line 119 of file IdentifierResolver.h.

References Ptr.

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

Definition at line 109 of file IdentifierResolver.h.

References getIterator(), isIterator(), and Ptr.

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

Definition at line 124 of file IdentifierResolver.h.

References incrementSlowCase(), isIterator(), and Ptr.

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

Definition at line 116 of file IdentifierResolver.h.

References Ptr.

Friends And Related Function Documentation

friend class IdentifierResolver
friend

Definition at line 103 of file IdentifierResolver.h.

Member Data Documentation

uintptr_t clang::IdentifierResolver::iterator::Ptr

Ptr - There are 3 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 & 0x3 == 0x1) 3) A IdDeclInfo::DeclsTy::iterator that traverses the decls of parent declaration contexts too. (Ptr & 0x3 == 0x3)

Definition at line 82 of file IdentifierResolver.h.

Referenced by getAsOpaqueValue(), getFromOpaqueValue(), getIterator(), isIterator(), iterator(), operator!=(), operator*(), operator++(), and operator==().


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