class ParsedAttributes
Declaration
class ParsedAttributes : public ParsedAttributesView { /* full declaration omitted */ };
Description
ParsedAttributes - A collection of parsed attributes. Currently we don't differentiate between the various attribute syntaxes, which is basically silly. Right now this is a very lightweight container, but the expectation is that this will become significantly more serious.
Declared at: clang/include/clang/Sema/ParsedAttr.h:1012
Inherits from: ParsedAttributesView
Member Variables
- private clang::AttributePool pool
Inherited from ParsedAttributesView:
Method Overview
- public ParsedAttributes(clang::AttributeFactory & factory)
- public ParsedAttributes(const clang::ParsedAttributes &)
- public clang::ParsedAttr * addNew(clang::IdentifierInfo * attrName, clang::SourceRange attrRange, clang::IdentifierInfo * scopeName, clang::SourceLocation scopeLoc, clang::ArgsUnion * args, unsigned int numArgs, ParsedAttr::Syntax syntax, clang::SourceLocation ellipsisLoc = clang::SourceLocation())
- public clang::ParsedAttr * addNew(clang::IdentifierInfo * attrName, clang::SourceRange attrRange, clang::IdentifierInfo * scopeName, clang::SourceLocation scopeLoc, clang::IdentifierLoc * Param, const clang::AvailabilityChange & introduced, const clang::AvailabilityChange & deprecated, const clang::AvailabilityChange & obsoleted, clang::SourceLocation unavailable, const clang::Expr * MessageExpr, ParsedAttr::Syntax syntax, clang::SourceLocation strict, const clang::Expr * ReplacementExpr)
- public clang::ParsedAttr * addNew(clang::IdentifierInfo * attrName, clang::SourceRange attrRange, clang::IdentifierInfo * scopeName, clang::SourceLocation scopeLoc, clang::IdentifierLoc * Param1, clang::IdentifierLoc * Param2, clang::IdentifierLoc * Param3, ParsedAttr::Syntax syntax)
- public clang::ParsedAttr * addNewPropertyAttr(clang::IdentifierInfo * attrName, clang::SourceRange attrRange, clang::IdentifierInfo * scopeName, clang::SourceLocation scopeLoc, clang::IdentifierInfo * getterId, clang::IdentifierInfo * setterId, ParsedAttr::Syntax syntaxUsed)
- public clang::ParsedAttr * addNewTypeAttr(clang::IdentifierInfo * attrName, clang::SourceRange attrRange, clang::IdentifierInfo * scopeName, clang::SourceLocation scopeLoc, clang::ParsedType typeArg, ParsedAttr::Syntax syntaxUsed)
- public clang::ParsedAttr * addNewTypeTagForDatatype(clang::IdentifierInfo * attrName, clang::SourceRange attrRange, clang::IdentifierInfo * scopeName, clang::SourceLocation scopeLoc, clang::IdentifierLoc * argumentKind, clang::ParsedType matchingCType, bool layoutCompatible, bool mustBeNull, ParsedAttr::Syntax syntax)
- public void clear()
- public clang::AttributePool & getPool() const
- public void takeAllFrom(clang::ParsedAttributes & Other)
- public void takeOneFrom(clang::ParsedAttributes & Other, clang::ParsedAttr * PA)
Inherited from ParsedAttributesView:
- public addAll
- public addAll
- public addAllAtEnd
- public addAllAtEnd
- public addAtEnd
- public back
- public back
- public begin
- public begin
- public clearListOnly
- public empty
- public end
- public end
- public front
- public front
- public hasAttribute
- public none
- public remove
- public size
Methods
¶ParsedAttributes(clang::AttributeFactory& factory)
ParsedAttributes(clang::AttributeFactory& factory)
Declared at: clang/include/clang/Sema/ParsedAttr.h:1014
Parameters
- clang::AttributeFactory& factory
¶ParsedAttributes(const clang::ParsedAttributes&)
ParsedAttributes(const clang::ParsedAttributes&)
Declared at: clang/include/clang/Sema/ParsedAttr.h:1015
Parameters
- const clang::ParsedAttributes&
¶clang::ParsedAttr* addNew(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::ArgsUnion* args,
unsigned int numArgs,
ParsedAttr::Syntax syntax,
clang::SourceLocation ellipsisLoc =
clang::SourceLocation())
clang::ParsedAttr* addNew(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::ArgsUnion* args,
unsigned int numArgs,
ParsedAttr::Syntax syntax,
clang::SourceLocation ellipsisLoc =
clang::SourceLocation())
Description
Add attribute with expression arguments.
Declared at: clang/include/clang/Sema/ParsedAttr.h:1043
Parameters
- clang::IdentifierInfo* attrName
- clang::SourceRange attrRange
- clang::IdentifierInfo* scopeName
- clang::SourceLocation scopeLoc
- clang::ArgsUnion* args
- unsigned int numArgs
- ParsedAttr::Syntax syntax
- clang::SourceLocation ellipsisLoc = clang::SourceLocation()
¶clang::ParsedAttr* addNew(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierLoc* Param,
const clang::AvailabilityChange& introduced,
const clang::AvailabilityChange& deprecated,
const clang::AvailabilityChange& obsoleted,
clang::SourceLocation unavailable,
const clang::Expr* MessageExpr,
ParsedAttr::Syntax syntax,
clang::SourceLocation strict,
const clang::Expr* ReplacementExpr)
clang::ParsedAttr* addNew(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierLoc* Param,
const clang::AvailabilityChange& introduced,
const clang::AvailabilityChange& deprecated,
const clang::AvailabilityChange& obsoleted,
clang::SourceLocation unavailable,
const clang::Expr* MessageExpr,
ParsedAttr::Syntax syntax,
clang::SourceLocation strict,
const clang::Expr* ReplacementExpr)
Description
Add availability attribute.
Declared at: clang/include/clang/Sema/ParsedAttr.h:1055
Parameters
- clang::IdentifierInfo* attrName
- clang::SourceRange attrRange
- clang::IdentifierInfo* scopeName
- clang::SourceLocation scopeLoc
- clang::IdentifierLoc* Param
- const clang::AvailabilityChange& introduced
- const clang::AvailabilityChange& deprecated
- const clang::AvailabilityChange& obsoleted
- clang::SourceLocation unavailable
- const clang::Expr* MessageExpr
- ParsedAttr::Syntax syntax
- clang::SourceLocation strict
- const clang::Expr* ReplacementExpr
¶clang::ParsedAttr* addNew(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierLoc* Param1,
clang::IdentifierLoc* Param2,
clang::IdentifierLoc* Param3,
ParsedAttr::Syntax syntax)
clang::ParsedAttr* addNew(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierLoc* Param1,
clang::IdentifierLoc* Param2,
clang::IdentifierLoc* Param3,
ParsedAttr::Syntax syntax)
Description
Add objc_bridge_related attribute.
Declared at: clang/include/clang/Sema/ParsedAttr.h:1071
Parameters
- clang::IdentifierInfo* attrName
- clang::SourceRange attrRange
- clang::IdentifierInfo* scopeName
- clang::SourceLocation scopeLoc
- clang::IdentifierLoc* Param1
- clang::IdentifierLoc* Param2
- clang::IdentifierLoc* Param3
- ParsedAttr::Syntax syntax
¶clang::ParsedAttr* addNewPropertyAttr(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierInfo* getterId,
clang::IdentifierInfo* setterId,
ParsedAttr::Syntax syntaxUsed)
clang::ParsedAttr* addNewPropertyAttr(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierInfo* getterId,
clang::IdentifierInfo* setterId,
ParsedAttr::Syntax syntaxUsed)
Description
Add microsoft __delspec(property) attribute.
Declared at: clang/include/clang/Sema/ParsedAttr.h:1108
Parameters
- clang::IdentifierInfo* attrName
- clang::SourceRange attrRange
- clang::IdentifierInfo* scopeName
- clang::SourceLocation scopeLoc
- clang::IdentifierInfo* getterId
- clang::IdentifierInfo* setterId
- ParsedAttr::Syntax syntaxUsed
¶clang::ParsedAttr* addNewTypeAttr(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::ParsedType typeArg,
ParsedAttr::Syntax syntaxUsed)
clang::ParsedAttr* addNewTypeAttr(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::ParsedType typeArg,
ParsedAttr::Syntax syntaxUsed)
Description
Add an attribute with a single type argument.
Declared at: clang/include/clang/Sema/ParsedAttr.h:1096
Parameters
- clang::IdentifierInfo* attrName
- clang::SourceRange attrRange
- clang::IdentifierInfo* scopeName
- clang::SourceLocation scopeLoc
- clang::ParsedType typeArg
- ParsedAttr::Syntax syntaxUsed
¶clang::ParsedAttr* addNewTypeTagForDatatype(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierLoc* argumentKind,
clang::ParsedType matchingCType,
bool layoutCompatible,
bool mustBeNull,
ParsedAttr::Syntax syntax)
clang::ParsedAttr* addNewTypeTagForDatatype(
clang::IdentifierInfo* attrName,
clang::SourceRange attrRange,
clang::IdentifierInfo* scopeName,
clang::SourceLocation scopeLoc,
clang::IdentifierLoc* argumentKind,
clang::ParsedType matchingCType,
bool layoutCompatible,
bool mustBeNull,
ParsedAttr::Syntax syntax)
Description
Add type_tag_for_datatype attribute.
Declared at: clang/include/clang/Sema/ParsedAttr.h:1083
Parameters
- clang::IdentifierInfo* attrName
- clang::SourceRange attrRange
- clang::IdentifierInfo* scopeName
- clang::SourceLocation scopeLoc
- clang::IdentifierLoc* argumentKind
- clang::ParsedType matchingCType
- bool layoutCompatible
- bool mustBeNull
- ParsedAttr::Syntax syntax
¶void clear()
void clear()
Declared at: clang/include/clang/Sema/ParsedAttr.h:1036
¶clang::AttributePool& getPool() const
clang::AttributePool& getPool() const
Declared at: clang/include/clang/Sema/ParsedAttr.h:1017
¶void takeAllFrom(clang::ParsedAttributes& Other)
void takeAllFrom(clang::ParsedAttributes& Other)
Declared at: clang/include/clang/Sema/ParsedAttr.h:1019
Parameters
- clang::ParsedAttributes& Other
¶void takeOneFrom(clang::ParsedAttributes& Other,
clang::ParsedAttr* PA)
void takeOneFrom(clang::ParsedAttributes& Other,
clang::ParsedAttr* PA)
Declared at: clang/include/clang/Sema/ParsedAttr.h:1027
Parameters
- clang::ParsedAttributes& Other
- clang::ParsedAttr* PA