struct DeclaratorChunk::FunctionTypeInfo

Declaration

struct DeclaratorChunk::FunctionTypeInfo { /* full declaration omitted */ };

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

Member Variables

public unsigned int hasPrototype
hasPrototype - This is true if the function had at least one typed parameter. If the function is () or (a,b,c), then it has no prototype, and is treated as a K &R -style function.
public unsigned int isVariadic
isVariadic - If this function has a prototype, and if that proto ends with ',...)', this is true. When true, EllipsisLoc contains the location of the ellipsis.
public unsigned int isAmbiguous
Can this declaration be a constructor-style initializer?
public unsigned int RefQualifierIsLValueRef
Whether the ref-qualifier (if any) is an lvalue reference. Otherwise, it's an rvalue reference.
public unsigned int ExceptionSpecType
ExceptionSpecType - An ExceptionSpecificationType value.
public unsigned int DeleteParams
DeleteParams - If this is true, we need to delete[] Params.
public unsigned int HasTrailingReturnType
HasTrailingReturnType - If this is true, a trailing return type was specified.
public clang::SourceLocation LParenLoc
The location of the left parenthesis in the source.
public clang::SourceLocation EllipsisLoc
When isVariadic is true, the location of the ellipsis in the source.
public clang::SourceLocation RParenLoc
The location of the right parenthesis in the source.
public unsigned int NumParams
NumParams - This is the number of formal parameters specified by the declarator.
public unsigned int NumExceptionsOrDecls
NumExceptionsOrDecls - This is the number of types in the dynamic-exception-decl, if the function has one. In C, this is the number of declarations in the function prototype.
public clang::SourceLocation RefQualifierLoc
If this is an invalid location, there is no ref-qualifier.
public clang::SourceLocation MutableLoc
The location of the 'mutable' qualifer in a lambda-declarator, if any.
public clang::SourceLocation ExceptionSpecLocBeg
The beginning location of the exception specification, if any.
public clang::SourceLocation ExceptionSpecLocEnd
The end location of the exception specification, if any.
public clang::DeclaratorChunk::ParamInfo* Params
Params - This is a pointer to a new[]'d array of ParamInfo objects that describe the parameters specified by this function declarator. null if there are no parameters specified.
public clang::DeclSpec* MethodQualifiers
DeclSpec for the function with the qualifier related info.
public clang::AttributeFactory* QualAttrFactory
AtttibuteFactory for the MethodQualifiers.
public anonymous struct / union
public clang::UnionParsedType TrailingReturnType
If HasTrailingReturnType is true, this is the trailing return type specified.
public clang::SourceLocation TrailingReturnTypeLoc
If HasTrailingReturnType is true, this is the location of the trailing return type.

Method Overview

Methods

void destroy()

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

void freeParams()

Description

Reset the parameter list to having zero parameters. This is used in various places for error recovery.

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

clang::SourceLocation getConstQualifierLoc() const

Description

Retrieve the location of the 'const' qualifier.

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

ArrayRef<clang::NamedDecl*> getDeclsInPrototype()
    const

Description

Get the non-parameter decls defined within this function prototype. Typically these are tag declarations.

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

clang::SourceLocation getEllipsisLoc() const

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

clang::SourceLocation getExceptionSpecLocBeg()
    const

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

clang::SourceLocation getExceptionSpecLocEnd()
    const

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

clang::SourceRange getExceptionSpecRange() const

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

clang::ExceptionSpecificationType
getExceptionSpecType() const

Description

Get the type of exception specification this function has.

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

clang::SourceLocation getLParenLoc() const

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

clang::SourceLocation getMutableLoc() const

Description

Retrieve the location of the 'mutable' qualifier, if any.

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

unsigned int getNumExceptions() const

Description

Get the number of dynamic exception specifications.

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

clang::DeclSpec& getOrCreateMethodQualifiers()

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

clang::SourceLocation getRParenLoc() const

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

clang::SourceLocation getRefQualifierLoc() const

Description

Retrieve the location of the ref-qualifier, if any.

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

clang::SourceLocation getRestrictQualifierLoc()
    const

Description

Retrieve the location of the 'restrict' qualifier.

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

clang::ParsedType getTrailingReturnType() const

Description

Get the trailing-return-type for this function declarator.

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

clang::SourceLocation getTrailingReturnTypeLoc()
    const

Description

Get the trailing-return-type location for this function declarator.

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

clang::SourceLocation getVolatileQualifierLoc()
    const

Description

Retrieve the location of the 'volatile' qualifier.

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

bool hasMethodTypeQualifiers() const

Description

Determine whether this method has qualifiers.

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

bool hasMutableQualifier() const

Description

Determine whether this lambda-declarator contains a 'mutable' qualifier.

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

bool hasRefQualifier() const

Description

Determine whether this function declaration contains a ref-qualifier.

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

bool hasTrailingReturnType() const

Description

Determine whether this function declarator had a trailing-return-type.

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

bool isKNRPrototype() const

Description

isKNRPrototype - Return true if this is a K &R style identifier list, like "void foo(a,b,c)". In a function definition, this will be followed by the parameter type definitions.

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