LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
llvm::AttributeSetImpl Class Reference

#include <AttributeImpl.h>

Inheritance diagram for llvm::AttributeSetImpl:
Inheritance graph
[legend]
Collaboration diagram for llvm::AttributeSetImpl:
Collaboration graph
[legend]

Public Types

typedef AttributeSetNode::iterator iterator
 

Public Member Functions

 AttributeSetImpl (LLVMContext &C, ArrayRef< std::pair< unsigned, AttributeSetNode * > > Attrs)
 
LLVMContextgetContext ()
 Get the context that created this AttributeSetImpl. More...
 
unsigned getNumAttributes () const
 Return the number of attributes this AttributeSet contains. More...
 
unsigned getSlotIndex (unsigned Slot) const
 Get the index of the given "slot" in the AttrNodes list. This index is the index of the return, parameter, or function object that the attributes are applied to, not the index into the AttrNodes list where the attributes reside. More...
 
AttributeSet getSlotAttributes (unsigned Slot) const
 Retrieve the attributes for the given "slot" in the AttrNode list. Slot is an index into the AttrNodes list, not the index of the return / parameter/ function which the attributes apply to. More...
 
AttributeSetNodegetSlotNode (unsigned Slot) const
 Retrieve the attribute set node for the given "slot" in the AttrNode list. More...
 
iterator begin (unsigned Slot) const
 
iterator end (unsigned Slot) const
 
void Profile (FoldingSetNodeID &ID) const
 
uint64_t Raw (unsigned Index) const
 
void dump () const
 
- Public Member Functions inherited from llvm::FoldingSetImpl::Node
 Node ()
 
void * getNextInBucket () const
 
void SetNextInBucket (void *N)
 

Static Public Member Functions

static void Profile (FoldingSetNodeID &ID, ArrayRef< std::pair< unsigned, AttributeSetNode * > > Nodes)
 

Friends

class AttributeSet
 

Detailed Description

Definition at line 186 of file AttributeImpl.h.

Member Typedef Documentation

Definition at line 247 of file AttributeImpl.h.

Constructor & Destructor Documentation

llvm::AttributeSetImpl::AttributeSetImpl ( LLVMContext C,
ArrayRef< std::pair< unsigned, AttributeSetNode * > >  Attrs 
)
inline

Definition at line 203 of file AttributeImpl.h.

Member Function Documentation

iterator llvm::AttributeSetImpl::begin ( unsigned  Slot) const
inline
void AttributeSetImpl::dump ( ) const

Definition at line 518 of file Attributes.cpp.

References AttributeSet.

iterator llvm::AttributeSetImpl::end ( unsigned  Slot) const
inline
LLVMContext& llvm::AttributeSetImpl::getContext ( )
inline

Get the context that created this AttributeSetImpl.

Definition at line 221 of file AttributeImpl.h.

unsigned llvm::AttributeSetImpl::getNumAttributes ( ) const
inline
AttributeSet llvm::AttributeSetImpl::getSlotAttributes ( unsigned  Slot) const
inline

Retrieve the attributes for the given "slot" in the AttrNode list. Slot is an index into the AttrNodes list, not the index of the return / parameter/ function which the attributes apply to.

Definition at line 237 of file AttributeImpl.h.

Referenced by llvm::AttributeSet::removeAttributes().

unsigned llvm::AttributeSetImpl::getSlotIndex ( unsigned  Slot) const
inline

Get the index of the given "slot" in the AttrNodes list. This index is the index of the return, parameter, or function object that the attributes are applied to, not the index into the AttrNodes list where the attributes reside.

Definition at line 230 of file AttributeImpl.h.

Referenced by llvm::AttrBuilder::AttrBuilder(), and Raw().

AttributeSetNode* llvm::AttributeSetImpl::getSlotNode ( unsigned  Slot) const
inline

Retrieve the attribute set node for the given "slot" in the AttrNode list.

Definition at line 243 of file AttributeImpl.h.

Referenced by begin(), end(), and Raw().

void llvm::AttributeSetImpl::Profile ( FoldingSetNodeID ID) const
inline

Definition at line 251 of file AttributeImpl.h.

References getNumAttributes(), and llvm::makeArrayRef().

static void llvm::AttributeSetImpl::Profile ( FoldingSetNodeID ID,
ArrayRef< std::pair< unsigned, AttributeSetNode * > >  Nodes 
)
inlinestatic
uint64_t AttributeSetImpl::Raw ( unsigned  Index) const

Friends And Related Function Documentation

friend class AttributeSet
friend

Definition at line 187 of file AttributeImpl.h.

Referenced by dump().


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