LLVM API Documentation
#include <Record.h>


Public Types | |
| typedef std::vector< Init * > ::const_iterator | const_iterator |
Public Member Functions | |
| void | Profile (FoldingSetNodeID &ID) const |
| unsigned | getSize () const |
| Init * | getElement (unsigned i) const |
| Record * | getElementAsRecord (unsigned i) const |
| virtual Init * | convertInitListSlice (const std::vector< unsigned > &Elements) const |
| virtual Init * | convertInitializerTo (RecTy *Ty) const |
| virtual Init * | resolveReferences (Record &R, const RecordVal *RV) const |
| virtual std::string | getAsString () const |
| getAsString - Convert this value to a string form. | |
| ArrayRef< Init * > | getValues () const |
| const_iterator | begin () const |
| const_iterator | end () const |
| size_t | size () const |
| bool | empty () const |
| virtual Init * | resolveListElementReference (Record &R, const RecordVal *RV, unsigned Elt) const |
| virtual Init * | getBit (unsigned Bit) const |
Static Public Member Functions | |
| static bool | classof (const Init *I) |
| static ListInit * | get (ArrayRef< Init * > Range, RecTy *EltTy) |
| typedef std::vector<Init*>::const_iterator llvm::ListInit::const_iterator |
| const_iterator llvm::ListInit::begin | ( | ) | const [inline] |
Reimplemented from llvm::TypedInit.
Definition at line 794 of file Record.h.
References llvm::Init::getKind(), and llvm::Init::IK_ListInit.
convertInitializerTo - This virtual function is a simple call-back function that should be overridden to call the appropriate RecTy::convertValue method.
Implements llvm::Init.
Definition at line 812 of file Record.h.
References llvm::RecTy::convertValue().
convertInitListSlice - This method is used to implement the list slice selection operator. Given an initializer, it selects the specified list elements, returning them as a new init of list type. If it is not legal to take a slice of this, return null.
Reimplemented from llvm::TypedInit.
Definition at line 637 of file Record.cpp.
References get(), getElement(), getSize(), and llvm::TypedInit::getType().
| const_iterator llvm::ListInit::end | ( | ) | const [inline] |
Definition at line 610 of file Record.cpp.
References I, and ProfileListInit().
Referenced by llvm::TypedInit::convertInitListSlice(), convertInitListSlice(), ForeachHelper(), and resolveReferences().
| std::string ListInit::getAsString | ( | ) | const [virtual] |
getAsString - Convert this value to a string form.
Implements llvm::Init.
Definition at line 690 of file Record.cpp.
getBit - This method is used to return the initializer for the specified bit.
Implements llvm::Init.
Definition at line 839 of file Record.h.
References llvm_unreachable.
Definition at line 802 of file Record.h.
Referenced by convertInitListSlice(), llvm::ListRecTy::convertValue(), llvm::Record::getValueAsListOfDefs(), llvm::Record::getValueAsListOfInts(), llvm::Record::getValueAsListOfStrings(), resolveListElementReference(), llvm::VarInit::resolveListElementReference(), and resolveReferences().
Definition at line 647 of file Record.cpp.
References llvm::dyn_cast(), and llvm::PrintFatalError().
| unsigned llvm::ListInit::getSize | ( | ) | const [inline] |
Definition at line 801 of file Record.h.
Referenced by convertInitListSlice(), llvm::ListRecTy::convertValue(), llvm::Record::getValueAsListOfDefs(), llvm::Record::getValueAsListOfInts(), llvm::Record::getValueAsListOfStrings(), resolveListElementReference(), llvm::VarInit::resolveListElementReference(), and resolveReferences().
| void ListInit::Profile | ( | FoldingSetNodeID & | ID | ) | const |
Definition at line 628 of file Record.cpp.
References llvm::dyn_cast(), llvm::ListRecTy::getElementType(), llvm::TypedInit::getType(), and ProfileListInit().
| Init * ListInit::resolveListElementReference | ( | Record & | R, |
| const RecordVal * | RV, | ||
| unsigned | Elt | ||
| ) | const [virtual] |
resolveListElementReference - This method is used to implement VarListElementInit::resolveReferences. If the list element is resolvable now, we return the resolved value, otherwise we return null.
Implements llvm::TypedInit.
Definition at line 677 of file Record.cpp.
References getElement(), and getSize().
resolveReferences - This method is used by classes that refer to other variables which may not be defined at the time they expression is formed. If a value is set for the variable later, this method will be called on users of the value to allow the value to propagate out.
Reimplemented from llvm::Init.
Definition at line 655 of file Record.cpp.
References get(), getElement(), getSize(), llvm::TypedInit::getType(), and llvm::Init::resolveReferences().