clang  3.7.0
Public Member Functions | List of all members
clang::AttributePool Class Reference

#include <AttributeList.h>

Public Member Functions

 AttributePool (AttributeFactory &factory)
 Create a new pool for a factory. More...
 
 AttributePool (AttributePool &pool)
 Move the given pool's allocations to this pool. More...
 
AttributeFactorygetFactory () const
 
void clear ()
 
void takeAllFrom (AttributePool &pool)
 Take the given pool's allocations and add them to this pool. More...
 
 ~AttributePool ()
 
AttributeListcreate (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, ArgsUnion *args, unsigned numArgs, AttributeList::Syntax syntax, SourceLocation ellipsisLoc=SourceLocation())
 
AttributeListcreate (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, IdentifierLoc *Param, const AvailabilityChange &introduced, const AvailabilityChange &deprecated, const AvailabilityChange &obsoleted, SourceLocation unavailable, const Expr *MessageExpr, AttributeList::Syntax syntax)
 
AttributeListcreate (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, IdentifierLoc *Param1, IdentifierLoc *Param2, IdentifierLoc *Param3, AttributeList::Syntax syntax)
 
AttributeListcreateTypeTagForDatatype (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, IdentifierLoc *argumentKind, ParsedType matchingCType, bool layoutCompatible, bool mustBeNull, AttributeList::Syntax syntax)
 
AttributeListcreateTypeAttribute (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, ParsedType typeArg, AttributeList::Syntax syntaxUsed)
 
AttributeListcreatePropertyAttribute (IdentifierInfo *attrName, SourceRange attrRange, IdentifierInfo *scopeName, SourceLocation scopeLoc, IdentifierInfo *getterId, IdentifierInfo *setterId, AttributeList::Syntax syntaxUsed)
 

Detailed Description

Definition at line 541 of file AttributeList.h.

Constructor & Destructor Documentation

clang::AttributePool::AttributePool ( AttributeFactory factory)
inline

Create a new pool for a factory.

Definition at line 560 of file AttributeList.h.

clang::AttributePool::AttributePool ( AttributePool pool)
inline

Move the given pool's allocations to this pool.

Definition at line 563 of file AttributeList.h.

clang::AttributePool::~AttributePool ( )
inline

Definition at line 584 of file AttributeList.h.

Member Function Documentation

void clang::AttributePool::clear ( )
inline

Definition at line 569 of file AttributeList.h.

AttributeList* clang::AttributePool::create ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
ArgsUnion args,
unsigned  numArgs,
AttributeList::Syntax  syntax,
SourceLocation  ellipsisLoc = SourceLocation() 
)
inline
AttributeList* clang::AttributePool::create ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
IdentifierLoc Param,
const AvailabilityChange introduced,
const AvailabilityChange deprecated,
const AvailabilityChange obsoleted,
SourceLocation  unavailable,
const Expr MessageExpr,
AttributeList::Syntax  syntax 
)
inline

Definition at line 601 of file AttributeList.h.

References clang::AttributeFactory::AvailabilityAllocSize.

AttributeList* clang::AttributePool::create ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
IdentifierLoc Param1,
IdentifierLoc Param2,
IdentifierLoc Param3,
AttributeList::Syntax  syntax 
)
inline

Definition at line 618 of file AttributeList.h.

AttributeList* clang::AttributePool::createPropertyAttribute ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
IdentifierInfo getterId,
IdentifierInfo setterId,
AttributeList::Syntax  syntaxUsed 
)
inline

Definition at line 656 of file AttributeList.h.

References clang::AttributeFactory::PropertyAllocSize.

AttributeList* clang::AttributePool::createTypeAttribute ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
ParsedType  typeArg,
AttributeList::Syntax  syntaxUsed 
)
inline

Definition at line 646 of file AttributeList.h.

AttributeList* clang::AttributePool::createTypeTagForDatatype ( IdentifierInfo attrName,
SourceRange  attrRange,
IdentifierInfo scopeName,
SourceLocation  scopeLoc,
IdentifierLoc argumentKind,
ParsedType  matchingCType,
bool  layoutCompatible,
bool  mustBeNull,
AttributeList::Syntax  syntax 
)
inline
AttributeFactory& clang::AttributePool::getFactory ( ) const
inline

Definition at line 567 of file AttributeList.h.

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

void clang::AttributePool::takeAllFrom ( AttributePool pool)
inline

Take the given pool's allocations and add them to this pool.

Definition at line 577 of file AttributeList.h.

Referenced by clang::Declarator::AddTypeInfo(), and takeDeclAttributes().


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