clang 20.0.0git
Classes | Public Member Functions | Static Public Member Functions | List of all members
clang::DeclarationNameLoc Class Reference

DeclarationNameLoc - Additional source/type location info for a declaration name. More...

#include "clang/AST/DeclarationName.h"

Public Member Functions

 DeclarationNameLoc (DeclarationName Name)
 
 DeclarationNameLoc ()
 
TypeSourceInfogetNamedTypeInfo () const
 Returns the source type info.
 
SourceLocation getCXXOperatorNameBeginLoc () const
 Return the beginning location of the getCXXOperatorNameRange() range.
 
SourceLocation getCXXOperatorNameEndLoc () const
 Return the end location of the getCXXOperatorNameRange() range.
 
SourceRange getCXXOperatorNameRange () const
 Return the range of the operator name (without the operator keyword).
 
SourceLocation getCXXLiteralOperatorNameLoc () const
 Return the location of the literal operator name (without the operator keyword).
 

Static Public Member Functions

static DeclarationNameLoc makeNamedTypeLoc (TypeSourceInfo *TInfo)
 Construct location information for a constructor, destructor or conversion operator.
 
static DeclarationNameLoc makeCXXOperatorNameLoc (SourceLocation BeginLoc, SourceLocation EndLoc)
 Construct location information for a non-literal C++ operator.
 
static DeclarationNameLoc makeCXXOperatorNameLoc (SourceRange Range)
 Construct location information for a non-literal C++ operator.
 
static DeclarationNameLoc makeCXXLiteralOperatorNameLoc (SourceLocation Loc)
 Construct location information for a literal C++ operator.
 

Detailed Description

DeclarationNameLoc - Additional source/type location info for a declaration name.

Needs a DeclarationName in order to be interpreted correctly.

Definition at line 660 of file DeclarationName.h.

Constructor & Destructor Documentation

◆ DeclarationNameLoc() [1/2]

DeclarationNameLoc::DeclarationNameLoc ( DeclarationName  Name)

◆ DeclarationNameLoc() [2/2]

clang::DeclarationNameLoc::DeclarationNameLoc ( )
inline

Definition at line 706 of file DeclarationName.h.

References memset().

Member Function Documentation

◆ getCXXLiteralOperatorNameLoc()

SourceLocation clang::DeclarationNameLoc::getCXXLiteralOperatorNameLoc ( ) const
inline

Return the location of the literal operator name (without the operator keyword).

Assumes that the object stores location information of a literal operator.

Definition at line 733 of file DeclarationName.h.

Referenced by clang::ASTRecordWriter::AddDeclarationNameLoc(), and clang::DeclarationNameInfo::getCXXLiteralOperatorNameLoc().

◆ getCXXOperatorNameBeginLoc()

SourceLocation clang::DeclarationNameLoc::getCXXOperatorNameBeginLoc ( ) const
inline

Return the beginning location of the getCXXOperatorNameRange() range.

Definition at line 713 of file DeclarationName.h.

◆ getCXXOperatorNameEndLoc()

SourceLocation clang::DeclarationNameLoc::getCXXOperatorNameEndLoc ( ) const
inline

Return the end location of the getCXXOperatorNameRange() range.

Definition at line 718 of file DeclarationName.h.

◆ getCXXOperatorNameRange()

SourceRange clang::DeclarationNameLoc::getCXXOperatorNameRange ( ) const
inline

Return the range of the operator name (without the operator keyword).

Assumes that the object stores location information of a (non-literal) operator.

Definition at line 725 of file DeclarationName.h.

Referenced by clang::ASTRecordWriter::AddDeclarationNameLoc(), and clang::DeclarationNameInfo::getCXXOperatorNameRange().

◆ getNamedTypeInfo()

TypeSourceInfo * clang::DeclarationNameLoc::getNamedTypeInfo ( ) const
inline

Returns the source type info.

Assumes that the object stores location information of a constructor, destructor or conversion operator.

Definition at line 710 of file DeclarationName.h.

Referenced by clang::ASTRecordWriter::AddDeclarationNameLoc(), clang::DeclarationNameInfo::containsUnexpandedParameterPack(), clang::DeclarationNameInfo::getNamedTypeInfo(), clang::DeclarationNameInfo::isInstantiationDependent(), and clang::DeclarationNameInfo::printName().

◆ makeCXXLiteralOperatorNameLoc()

static DeclarationNameLoc clang::DeclarationNameLoc::makeCXXLiteralOperatorNameLoc ( SourceLocation  Loc)
inlinestatic

Construct location information for a literal C++ operator.

Definition at line 759 of file DeclarationName.h.

References Loc.

Referenced by clang::ASTRecordReader::readDeclarationNameLoc().

◆ makeCXXOperatorNameLoc() [1/2]

static DeclarationNameLoc clang::DeclarationNameLoc::makeCXXOperatorNameLoc ( SourceLocation  BeginLoc,
SourceLocation  EndLoc 
)
inlinestatic

Construct location information for a non-literal C++ operator.

Definition at line 746 of file DeclarationName.h.

Referenced by clang::Sema::CreateLambdaCallOperator(), clang::ASTContext::getNameForTemplate(), and clang::ASTRecordReader::readDeclarationNameLoc().

◆ makeCXXOperatorNameLoc() [2/2]

static DeclarationNameLoc clang::DeclarationNameLoc::makeCXXOperatorNameLoc ( SourceRange  Range)
inlinestatic

Construct location information for a non-literal C++ operator.

Definition at line 752 of file DeclarationName.h.

References Range.

◆ makeNamedTypeLoc()

static DeclarationNameLoc clang::DeclarationNameLoc::makeNamedTypeLoc ( TypeSourceInfo TInfo)
inlinestatic

Construct location information for a constructor, destructor or conversion operator.

Definition at line 739 of file DeclarationName.h.

Referenced by addBlockPointerConversion(), addFunctionPointerConversion(), and clang::ASTRecordReader::readDeclarationNameLoc().

Member Data Documentation

◆ CXXLiteralOperatorName

struct CXXLitOpName clang::DeclarationNameLoc::CXXLiteralOperatorName

Definition at line 689 of file DeclarationName.h.

◆ CXXOperatorName

struct CXXOpName clang::DeclarationNameLoc::CXXOperatorName

Definition at line 688 of file DeclarationName.h.

◆ NamedType

struct NT clang::DeclarationNameLoc::NamedType

Definition at line 687 of file DeclarationName.h.


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