clang API Documentation

Public Member Functions
clang::ParsedAttributes Class Reference

#include <AttributeList.h>

Inheritance diagram for clang::ParsedAttributes:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 ParsedAttributes (AttributeFactory &factory)
 ParsedAttributes (ParsedAttributes &attrs)
AttributePoolgetPool () const
bool empty () const
void add (AttributeList *newAttr)
void addAll (AttributeList *newList)
void set (AttributeList *newList)
void takeAllFrom (ParsedAttributes &attrs)
void clear ()
AttributeListgetList () const
AttributeList *& getListRef ()
AttributeListaddNew (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, IdentifierInfo *parmName, SourceLocation parmLoc, Expr **args, unsigned numArgs, bool declspec=false, bool cxx0x=false)
AttributeListaddNew (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, IdentifierInfo *parmName, SourceLocation parmLoc, const AvailabilityChange &introduced, const AvailabilityChange &deprecated, const AvailabilityChange &obsoleted, SourceLocation unavailable, const Expr *MessageExpr, bool declspec=false, bool cxx0x=false)
AttributeListaddNewInteger (ASTContext &C, IdentifierInfo *name, SourceLocation loc, int arg)

Detailed 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.

Definition at line 447 of file AttributeList.h.


Constructor & Destructor Documentation

clang::ParsedAttributes::ParsedAttributes ( AttributeFactory factory) [inline]

Definition at line 449 of file AttributeList.h.

clang::ParsedAttributes::ParsedAttributes ( ParsedAttributes attrs) [inline]

Definition at line 453 of file AttributeList.h.


Member Function Documentation

void clang::ParsedAttributes::add ( AttributeList newAttr) [inline]
void clang::ParsedAttributes::addAll ( AttributeList newList) [inline]
AttributeList* clang::ParsedAttributes::addNew ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
IdentifierInfo parmName,
SourceLocation  parmLoc,
Expr **  args,
unsigned  numArgs,
bool  declspec = false,
bool  cxx0x = false 
) [inline]

Definition at line 498 of file AttributeList.h.

AttributeList* clang::ParsedAttributes::addNew ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
IdentifierInfo parmName,
SourceLocation  parmLoc,
const AvailabilityChange introduced,
const AvailabilityChange deprecated,
const AvailabilityChange obsoleted,
SourceLocation  unavailable,
const Expr MessageExpr,
bool  declspec = false,
bool  cxx0x = false 
) [inline]

Definition at line 510 of file AttributeList.h.

AttributeList* clang::ParsedAttributes::addNewInteger ( ASTContext C,
IdentifierInfo name,
SourceLocation  loc,
int  arg 
) [inline]

Definition at line 528 of file AttributeList.h.

void clang::ParsedAttributes::clear ( ) [inline]

Definition at line 490 of file AttributeList.h.

Referenced by clang::Declarator::clear().

bool clang::ParsedAttributes::empty ( ) const [inline]
AttributeList* clang::ParsedAttributes::getList ( ) const [inline]
AttributeList*& clang::ParsedAttributes::getListRef ( ) [inline]

Returns a reference to the attribute list. Try not to introduce dependencies on this method, it may not be long-lived.

Definition at line 495 of file AttributeList.h.

Referenced by distributeObjCPointerTypeAttrFromDeclarator(), and clang::Declarator::getAttrListRef().

AttributePool& clang::ParsedAttributes::getPool ( ) const [inline]
void clang::ParsedAttributes::set ( AttributeList newList) [inline]

Definition at line 480 of file AttributeList.h.

Referenced by clang::DeclSpec::setAttributes().

void clang::ParsedAttributes::takeAllFrom ( ParsedAttributes attrs) [inline]

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