clang: clang::TypeLocBuilder Class Reference (original) (raw)
#include "[/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Sema/TypeLocBuilder.h](TypeLocBuilder%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| TypeLocBuilder () | |
| ~TypeLocBuilder () | |
| TypeLocBuilder (const TypeLocBuilder &)=delete | |
| TypeLocBuilder & | operator= (const TypeLocBuilder &)=delete |
| void | reserve (size_t Requested) |
| Ensures that this buffer has at least as much capacity as described. | |
| void | pushFullCopy (TypeLoc L) |
| Pushes a copy of the given [TypeLoc](classclang%5F1%5F1TypeLoc.html "Base wrapper for a particular "section" of type source info.") onto this builder. | |
| void | pushTrivial (ASTContext &Context, QualType T, SourceLocation Loc) |
| Pushes 'T' with all locations pointing to 'Loc'. | |
| TypeSpecTypeLoc | pushTypeSpec (QualType T) |
| Pushes space for a typespec [TypeLoc](classclang%5F1%5F1TypeLoc.html "Base wrapper for a particular "section" of type source info."). | |
| void | clear () |
| Resets this builder to the newly-initialized state. | |
| 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. | |
| template | |
| TyLocType | push (QualType T) |
| Pushes space for a new [TypeLoc](classclang%5F1%5F1TypeLoc.html "Base wrapper for a particular "section" of type source info.") of the given type. | |
| TypeSourceInfo * | getTypeSourceInfo (ASTContext &Context, QualType T) |
| Creates a TypeSourceInfo for the given type. | |
| TypeLoc | getTypeLocInContext (ASTContext &Context, QualType T) |
| Copies the type-location information to the given AST context and returns a [TypeLoc](classclang%5F1%5F1TypeLoc.html "Base wrapper for a particular "section" of type source info.") referring into the AST context. |
Definition at line 22 of file TypeLocBuilder.h.
| clang::TypeLocBuilder::TypeLocBuilder ( ) | inline |
|---|
◆ ~TypeLocBuilder()
| clang::TypeLocBuilder::~TypeLocBuilder ( ) | inline |
|---|
◆ TypeLocBuilder() [2/2]
| clang::TypeLocBuilder::TypeLocBuilder ( const TypeLocBuilder & ) | delete |
|---|
◆ clear()
| void clang::TypeLocBuilder::clear ( ) | inline |
|---|
◆ getTypeLocInContext()
◆ getTypeSourceInfo()
Creates a TypeSourceInfo for the given type.
Definition at line 110 of file TypeLocBuilder.h.
References clang::TypeLoc::getOpaqueData(), clang::TypeSourceInfo::getTypeLoc(), memcpy(), and clang::T.
Referenced by clang::Sema::ActOnDependentTag(), clang::SemaObjC::actOnObjCTypeParam(), clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::ActOnTagTemplateIdType(), clang::Sema::ActOnTemplateIdType(), clang::Sema::buildLambdaInitCaptureInitialization(), clang::Sema::BuildMemInitializer(), clang::Sema::BuildQualifiedDeclarationNameExpr(), clang::Sema::CheckPackExpansion(), clang::Sema::CheckTemplateTypeArgument(), clang::Sema::CheckTypenameType(), clang::Sema::ClassifyName(), GetFullTypeForDeclarator(), clang::Sema::getTemplateArgumentPackExpansionPattern(), clang::Sema::getTypeName(), clang::Sema::InstantiateFunctionDefinition(), ProcessAPINotes(), clang::Sema::SubstFunctionDeclType(), clang::Sema::SubstType(), clang::TreeTransform< Derived >::TransformType(), and clang::TreeTransform< Derived >::TransformTypeWithDeducedTST().
◆ operator=()
◆ push()
template
| TyLocType clang::TypeLocBuilder::push ( QualType T) | inline |
|---|
Pushes space for a new [TypeLoc](classclang%5F1%5F1TypeLoc.html "Base wrapper for a particular "section" of type source info.") of the given type.
Invalidates any TypeLocs previously retrieved from this builder.
Definition at line 102 of file TypeLocBuilder.h.
References clang::TypeLoc::castAs(), and clang::T.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifier(), clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), clang::Sema::ActOnCXXNestedNameSpecifierIndexedPack(), clang::Sema::ActOnDependentTag(), clang::SemaObjC::actOnObjCTypeParam(), clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::ActOnTagTemplateIdType(), clang::Sema::ActOnTemplateIdType(), clang::Sema::BuildCXXNestedNameSpecifier(), clang::Sema::buildLambdaInitCaptureInitialization(), clang::Sema::BuildMemInitializer(), clang::Sema::BuildQualifiedDeclarationNameExpr(), clang::Sema::CheckPackExpansion(), clang::Sema::CheckTemplateTypeArgument(), clang::Sema::CheckTypenameType(), clang::Sema::ClassifyName(), ExtendNestedNameSpecifier(), GetFullTypeForDeclarator(), clang::Sema::getTypeName(), clang::Sema::InstantiateFunctionDefinition(), ProcessAPINotes(), clang::TreeTransform< Derived >::TransformFunctionProtoType(), clang::TreeTransform< Derived >::TransformReferenceType(), clang::TreeTransform< Derived >::TransformTagType(), and clang::TransformTypeSpecType().
◆ pushFullCopy()
| void TypeLocBuilder::pushFullCopy | ( | TypeLoc | L | ) |
|---|
◆ pushTrivial()
◆ pushTypeSpec()
◆ reserve()
| void clang::TypeLocBuilder::reserve ( size_t Requested) | inline |
|---|
◆ TypeWasModifiedSafely()
| void clang::TypeLocBuilder::TypeWasModifiedSafely ( QualType T) | inline |
|---|
The documentation for this class was generated from the following files:
- lib/Sema/TypeLocBuilder.h
- lib/Sema/TypeLocBuilder.cpp