clang: clang::NestedNameSpecifierLocBuilder Class Reference (original) (raw)

Class that aids in the construction of nested-name-specifiers along with source-location information for all of the components of the nested-name-specifier. More...

#include "[clang/AST/NestedNameSpecifierBase.h](NestedNameSpecifierBase%5F8h%5Fsource.html)"

Public Member Functions
NestedNameSpecifierLocBuilder ()=default
NestedNameSpecifierLocBuilder (const NestedNameSpecifierLocBuilder &Other)
NestedNameSpecifierLocBuilder & operator= (const NestedNameSpecifierLocBuilder &Other)
~NestedNameSpecifierLocBuilder ()
NestedNameSpecifier getRepresentation () const
Retrieve the representation of the nested-name-specifier.
void Make (ASTContext &Context, TypeLoc TL, SourceLocation ColonColonLoc)
Make a nested-name-specifier of the form 'type::'.
void Extend (ASTContext &Context, const NamespaceBaseDecl *Namespace, SourceLocation NamespaceLoc, SourceLocation ColonColonLoc)
Extend the current nested-name-specifier by another nested-name-specifier component of the form 'namespace::'.
void MakeGlobal (ASTContext &Context, SourceLocation ColonColonLoc)
Turn this (empty) nested-name-specifier into the global nested-name-specifier '::'.
void MakeMicrosoftSuper (ASTContext &Context, CXXRecordDecl *RD, SourceLocation SuperLoc, SourceLocation ColonColonLoc)
Turns this (empty) nested-name-specifier into '__super' nested-name-specifier.
void MakeTrivial (ASTContext &Context, NestedNameSpecifier Qualifier, SourceRange R)
Make a new nested-name-specifier from incomplete source-location information.
void Adopt (NestedNameSpecifierLoc Other)
Adopt an existing nested-name-specifier (with source-range information).
SourceRange getSourceRange () const LLVM_READONLY
Retrieve the source range covered by this nested-name-specifier.
NestedNameSpecifierLoc getWithLocInContext (ASTContext &Context) const
Retrieve a nested-name-specifier with location information, copied into the given AST context.
NestedNameSpecifierLoc getTemporary () const
Retrieve a nested-name-specifier with location information based on the information in this builder.
void Clear ()
Clear out this builder, and prepare it to build another nested-name-specifier with source-location information.
std::pair< char *, unsigned > getBuffer () const
Retrieve the underlying buffer.

Class that aids in the construction of nested-name-specifiers along with source-location information for all of the components of the nested-name-specifier.

Definition at line 426 of file NestedNameSpecifierBase.h.

clang::NestedNameSpecifierLocBuilder::NestedNameSpecifierLocBuilder ( ) default

NestedNameSpecifierLocBuilder() [2/2]

~NestedNameSpecifierLocBuilder()

clang::NestedNameSpecifierLocBuilder::~NestedNameSpecifierLocBuilder ( ) inline

Adopt()

Clear()

void clang::NestedNameSpecifierLocBuilder::Clear ( ) inline

Clear out this builder, and prepare it to build another nested-name-specifier with source-location information.

Definition at line 548 of file NestedNameSpecifierBase.h.

Extend()

Extend the current nested-name-specifier by another nested-name-specifier component of the form 'namespace::'.

Parameters

Context The AST context in which this nested-name-specifier resides.
Namespace The namespace.
NamespaceLoc The location of the namespace name.
ColonColonLoc The location of the trailing '::'.

Definition at line 260 of file NestedNameSpecifier.cpp.

References SaveSourceLocation().

getBuffer()

std::pair< char *, unsigned > clang::NestedNameSpecifierLocBuilder::getBuffer ( ) const inline

Retrieve the underlying buffer.

Returns

A pair containing a pointer to the buffer of source-location data and the size of the source-location data that resides in that buffer.

Definition at line 558 of file NestedNameSpecifierBase.h.

getRepresentation()

getSourceRange()

SourceRange clang::NestedNameSpecifierLocBuilder::getSourceRange ( ) const inline

getTemporary()

Retrieve a nested-name-specifier with location information based on the information in this builder.

This loc will contain references to the builder's internal data and may be invalidated by any change to the builder.

Definition at line 542 of file NestedNameSpecifierBase.h.

References getTemporary().

Referenced by getTemporary().

getWithLocInContext()

Make()

MakeGlobal()

MakeMicrosoftSuper()

Turns this (empty) nested-name-specifier into '__super' nested-name-specifier.

Parameters

Context The AST context in which this nested-name-specifier resides.
RD The declaration of the class in which nested-name-specifier appeared.
SuperLoc The location of the '__super' keyword. name.
ColonColonLoc The location of the trailing '::'.

Definition at line 280 of file NestedNameSpecifier.cpp.

References SaveSourceLocation().

MakeTrivial()

operator=()


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