clang 23.0.0git
clang::LateParsedTypeAttribute Struct Reference

A late-parsed attribute that will be applied as a type attribute. More...

#include "clang/Parse/Parser.h"

Inheritance diagram for clang::LateParsedTypeAttribute:
[legend]

Public Member Functions

 LateParsedTypeAttribute (Parser *P, IdentifierInfo &Name, SourceLocation Loc)
void ParseLexedAttributes () override
void ParseInto (ParsedAttributes &OutAttrs)
 Parse this late-parsed type attribute and store results in OutAttrs.
Public Member Functions inherited from clang::LateParsedAttribute
 LateParsedAttribute (Parser *P, IdentifierInfo &Name, SourceLocation Loc)
void addDecl (Decl *D)
Kind getKind () const
Public Member Functions inherited from clang::LateParsedDeclaration
virtual ~LateParsedDeclaration ()
virtual void ParseLexedMethodDeclarations ()
virtual void ParseLexedMemberInitializers ()
virtual void ParseLexedMethodDefs ()
virtual void ParseLexedPragmas ()

Static Public Member Functions

static bool classof (const LateParsedAttribute *LA)
Static Public Member Functions inherited from clang::LateParsedAttribute
static bool classof (const LateParsedAttribute *LA)

Additional Inherited Members

Public Types inherited from clang::LateParsedAttribute
enum class  Kind { Declaration , Type }
Public Attributes inherited from clang::LateParsedAttribute
ParserSelf
CachedTokens Toks
IdentifierInfoAttrName
IdentifierInfoMacroII = nullptr
SourceLocation AttrNameLoc
SmallVector< Decl *, 2 > Decls
Protected Member Functions inherited from clang::LateParsedAttribute
 LateParsedAttribute (Parser *P, IdentifierInfo &Name, SourceLocation Loc, Kind K)

Detailed Description

A late-parsed attribute that will be applied as a type attribute.

Unlike LateParsedAttribute (which applies to declarations via ActOnFinishDelayedAttribute), this stores cached tokens that are parsed during type construction when the placeholder LateParsedAttrType is replaced with a concrete type (e.g., CountAttributedType).

Definition at line 233 of file Parser.h.

Constructor & Destructor Documentation

◆ LateParsedTypeAttribute()

clang::LateParsedTypeAttribute::LateParsedTypeAttribute ( Parser * P,
IdentifierInfo & Name,
SourceLocation Loc )
inlineexplicit

Member Function Documentation

◆ classof()

bool clang::LateParsedTypeAttribute::classof ( const LateParsedAttribute * LA)
inlinestatic

◆ ParseInto()

void LateParsedTypeAttribute::ParseInto ( ParsedAttributes & OutAttrs)

Parse this late-parsed type attribute and store results in OutAttrs.

This method can be called from Sema during type transformation to parse the cached tokens and produce the final attribute.

Definition at line 4920 of file ParseDecl.cpp.

References clang::LateParsedAttribute::Self.

◆ ParseLexedAttributes()

void LateParsedTypeAttribute::ParseLexedAttributes ( )
overridevirtual

Reimplemented from clang::LateParsedAttribute.

Definition at line 322 of file ParseCXXInlineMethods.cpp.


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