clang 20.0.0git
Public Member Functions | Public Attributes | List of all members
clang::DeclaratorChunk::ParamInfo Struct Reference

ParamInfo - An array of paraminfo objects is allocated whenever a function declarator is parsed. More...

#include "clang/Sema/DeclSpec.h"

Public Member Functions

 ParamInfo ()=default
 
 ParamInfo (const IdentifierInfo *ident, SourceLocation iloc, Decl *param, std::unique_ptr< CachedTokens > DefArgTokens=nullptr)
 

Public Attributes

const IdentifierInfoIdent
 
SourceLocation IdentLoc
 
DeclParam
 
std::unique_ptr< CachedTokensDefaultArgTokens
 DefaultArgTokens - When the parameter's default argument cannot be parsed immediately (because it occurs within the declaration of a member function), it will be stored here as a sequence of tokens to be parsed once the class definition is complete.
 

Detailed Description

ParamInfo - An array of paraminfo objects is allocated whenever a function declarator is parsed.

There are two interesting styles of parameters here: K&R-style identifier lists and parameter type lists. K&R-style identifier lists will have information about the identifier, but no type information. Parameter type lists will have type info (if the actions module provides it), but may have null identifier info: e.g. for 'void foo(int X, int)'.

Definition at line 1333 of file DeclSpec.h.

Constructor & Destructor Documentation

◆ ParamInfo() [1/2]

clang::DeclaratorChunk::ParamInfo::ParamInfo ( )
default

◆ ParamInfo() [2/2]

clang::DeclaratorChunk::ParamInfo::ParamInfo ( const IdentifierInfo ident,
SourceLocation  iloc,
Decl param,
std::unique_ptr< CachedTokens DefArgTokens = nullptr 
)
inline

Definition at line 1346 of file DeclSpec.h.

Member Data Documentation

◆ DefaultArgTokens

std::unique_ptr<CachedTokens> clang::DeclaratorChunk::ParamInfo::DefaultArgTokens

DefaultArgTokens - When the parameter's default argument cannot be parsed immediately (because it occurs within the declaration of a member function), it will be stored here as a sequence of tokens to be parsed once the class definition is complete.

Non-NULL indicates that there is a default argument.

Definition at line 1343 of file DeclSpec.h.

Referenced by clang::Sema::CheckExtraCXXDefaultArguments().

◆ Ident

const IdentifierInfo* clang::DeclaratorChunk::ParamInfo::Ident

◆ IdentLoc

SourceLocation clang::DeclaratorChunk::ParamInfo::IdentLoc

◆ Param

Decl* clang::DeclaratorChunk::ParamInfo::Param

The documentation for this struct was generated from the following file: