class UnqualifiedId

Declaration

class UnqualifiedId { /* full declaration omitted */ };

Description

Represents a C++ unqualified-id that has been parsed.

Declared at: clang/include/clang/Sema/DeclSpec.h:951

Member Variables

public clang::UnqualifiedIdKind Kind
Describes the kind of unqualified-id parsed.
public anonymous struct / union
public clang::SourceLocation StartLocation
The location of the first token that describes this unqualified-id, which will be the location of the identifier, "operator" keyword, tilde (for a destructor), or the template name of a template-id.
public clang::SourceLocation EndLocation
The location of the last token that describes this unqualified-id.

Method Overview

Methods

UnqualifiedId()

Declared at: clang/include/clang/Sema/DeclSpec.h:1014

UnqualifiedId(const clang::UnqualifiedId& Other)

Declared at: clang/include/clang/Sema/DeclSpec.h:953

Parameters

const clang::UnqualifiedId& Other

void clear()

Description

Clear out this unqualified-id, setting it to default (invalid) state.

Declared at: clang/include/clang/Sema/DeclSpec.h:1019

clang::SourceLocation getBeginLoc() const

Declared at: clang/include/clang/Sema/DeclSpec.h:1163

clang::SourceLocation getEndLoc() const

Declared at: clang/include/clang/Sema/DeclSpec.h:1164

clang::UnqualifiedIdKind getKind() const

Description

Determine what kind of name we have.

Declared at: clang/include/clang/Sema/DeclSpec.h:1033

clang::SourceRange getSourceRange() const

Description

Return the source range that covers this unqualified-id.

Declared at: clang/include/clang/Sema/DeclSpec.h:1160

bool isInvalid() const

Description

Determine whether this unqualified-id refers to an invalid name.

Declared at: clang/include/clang/Sema/DeclSpec.h:1030

bool isValid() const

Description

Determine whether this unqualified-id refers to a valid name.

Declared at: clang/include/clang/Sema/DeclSpec.h:1027

void setConstructorName(
    clang::ParsedType ClassType,
    clang::SourceLocation ClassNameLoc,
    clang::SourceLocation EndLoc)

Description

Specify that this unqualified-id was parsed as a constructor name.

Declared at: clang/include/clang/Sema/DeclSpec.h:1098

Parameters

clang::ParsedType ClassType
the class type referred to by the constructor name.
clang::SourceLocation ClassNameLoc
the location of the class name.
clang::SourceLocation EndLoc
the location of the last token that makes up the type name.

void setConstructorTemplateId(
    clang::TemplateIdAnnotation* TemplateId)

Description

Specify that this unqualified-id was parsed as a template-id that names a constructor.

Declared at: clang/include/clang/Sema/DeclSpec.h:1113

Parameters

clang::TemplateIdAnnotation* TemplateId
the template-id annotation that describes the parsed template-id. This UnqualifiedId instance will take ownership of the\p TemplateId and will free it on destruction.

void setConversionFunctionId(
    clang::SourceLocation OperatorLoc,
    clang::ParsedType Ty,
    clang::SourceLocation EndLoc)

Description

Specify that this unqualified-id was parsed as a conversion-function-id.

Declared at: clang/include/clang/Sema/DeclSpec.h:1066

Parameters

clang::SourceLocation OperatorLoc
the location of the 'operator' keyword.
clang::ParsedType Ty
the type to which this conversion function is converting.
clang::SourceLocation EndLoc
the location of the last token that makes up the type name.

void setDeductionGuideName(
    clang::ParsedTemplateTy Template,
    clang::SourceLocation TemplateLoc)

Description

Specify that this unqualified-id was parsed as a template-name for a deduction-guide.

Declared at: clang/include/clang/Sema/DeclSpec.h:1142

Parameters

clang::ParsedTemplateTy Template
The parsed template-name.
clang::SourceLocation TemplateLoc
The location of the parsed template-name.

void setDestructorName(
    clang::SourceLocation TildeLoc,
    clang::ParsedType ClassType,
    clang::SourceLocation EndLoc)

Description

Specify that this unqualified-id was parsed as a destructor name.

Declared at: clang/include/clang/Sema/DeclSpec.h:1121

Parameters

clang::SourceLocation TildeLoc
the location of the '~' that introduces the destructor name.
clang::ParsedType ClassType
the name of the class referred to by the destructor name.
clang::SourceLocation EndLoc

void setIdentifier(
    const clang::IdentifierInfo* Id,
    clang::SourceLocation IdLoc)

Description

Specify that this unqualified-id was parsed as an identifier.

Declared at: clang/include/clang/Sema/DeclSpec.h:1039

Parameters

const clang::IdentifierInfo* Id
the parsed identifier.
clang::SourceLocation IdLoc
the location of the parsed identifier.

void setImplicitSelfParam(
    const clang::IdentifierInfo* Id)

Description

Specify that this unqualified-id is an implicit 'self' parameter.

Declared at: clang/include/clang/Sema/DeclSpec.h:1153

Parameters

const clang::IdentifierInfo* Id
the identifier.

void setLiteralOperatorId(
    const clang::IdentifierInfo* Id,
    clang::SourceLocation OpLoc,
    clang::SourceLocation IdLoc)

Description

Specific that this unqualified-id was parsed as a literal-operator-id.

Declared at: clang/include/clang/Sema/DeclSpec.h:1083

Parameters

const clang::IdentifierInfo* Id
the parsed identifier.
clang::SourceLocation OpLoc
the location of the 'operator' keyword.
clang::SourceLocation IdLoc
the location of the identifier.

void setOperatorFunctionId(
    clang::SourceLocation OperatorLoc,
    clang::OverloadedOperatorKind Op,
    clang::SourceLocation* SymbolLocations)

Description

Specify that this unqualified-id was parsed as an operator-function-id.

Declared at: clang/include/clang/Sema/DeclSpec.h:1054

Parameters

clang::SourceLocation OperatorLoc
the location of the 'operator' keyword.
clang::OverloadedOperatorKind Op
the overloaded operator.
clang::SourceLocation* SymbolLocations
the locations of the individual operator symbols in the operator.

void setTemplateId(
    clang::TemplateIdAnnotation* TemplateId)

Description

Specify that this unqualified-id was parsed as a template-id.

Declared at: clang/include/clang/Sema/DeclSpec.h:1135

Parameters

clang::TemplateIdAnnotation* TemplateId
the template-id annotation that describes the parsed template-id. This UnqualifiedId instance will take ownership of the\p TemplateId and will free it on destruction.