clang  3.9.0
Public Member Functions | List of all members
clang::TypeLocBuilder Class Reference

#include <TypeLocBuilder.h>

Public Member Functions

 TypeLocBuilder ()
 
 ~TypeLocBuilder ()
 
void reserve (size_t Requested)
 Ensures that this buffer has at least as much capacity as described. More...
 
void pushFullCopy (TypeLoc L)
 Pushes a copy of the given TypeLoc onto this builder. More...
 
TypeSpecTypeLoc pushTypeSpec (QualType T)
 Pushes space for a typespec TypeLoc. More...
 
void clear ()
 Resets this builder to the newly-initialized state. More...
 
void TypeWasModifiedSafely (QualType T)
 Tell the TypeLocBuilder that the type it is storing has been modified in some safe way that doesn't affect type-location information. More...
 
template<class TyLocType >
TyLocType push (QualType T)
 Pushes space for a new TypeLoc of the given type. More...
 
TypeSourceInfogetTypeSourceInfo (ASTContext &Context, QualType T)
 Creates a TypeSourceInfo for the given type. More...
 
TypeLoc getTypeLocInContext (ASTContext &Context, QualType T)
 Copies the type-location information to the given AST context and returns a TypeLoc referring into the AST context. More...
 

Detailed Description

Definition at line 23 of file TypeLocBuilder.h.

Constructor & Destructor Documentation

clang::TypeLocBuilder::TypeLocBuilder ( )
inline

Definition at line 47 of file TypeLocBuilder.h.

clang::TypeLocBuilder::~TypeLocBuilder ( )
inline

Definition at line 53 of file TypeLocBuilder.h.

Member Function Documentation

void clang::TypeLocBuilder::clear ( )
inline

Resets this builder to the newly-initialized state.

Definition at line 78 of file TypeLocBuilder.h.

TypeLoc clang::TypeLocBuilder::getTypeLocInContext ( ASTContext Context,
QualType  T 
)
inline

Copies the type-location information to the given AST context and returns a TypeLoc referring into the AST context.

Definition at line 117 of file TypeLocBuilder.h.

References clang::ASTContext::Allocate().

Referenced by clang::Sema::ActOnCXXNestedNameSpecifier(), clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), and clang::Sema::BuildCXXNestedNameSpecifier().

TypeSourceInfo* clang::TypeLocBuilder::getTypeSourceInfo ( ASTContext Context,
QualType  T 
)
inline
template<class TyLocType >
TyLocType clang::TypeLocBuilder::push ( QualType  T)
inline
void TypeLocBuilder::pushFullCopy ( TypeLoc  L)
TypeSpecTypeLoc clang::TypeLocBuilder::pushTypeSpec ( QualType  T)
inline
void clang::TypeLocBuilder::reserve ( size_t  Requested)
inline

Ensures that this buffer has at least as much capacity as described.

Definition at line 59 of file TypeLocBuilder.h.

Referenced by pushFullCopy(), clang::Sema::SubstFunctionDeclType(), clang::Sema::SubstType(), and clang::TreeTransform< Derived >::TransformType().

void clang::TypeLocBuilder::TypeWasModifiedSafely ( QualType  T)
inline

Tell the TypeLocBuilder that the type it is storing has been modified in some safe way that doesn't affect type-location information.

Definition at line 88 of file TypeLocBuilder.h.

Referenced by clang::TreeTransform< Derived >::TransformReferenceType().


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