LLVM: llvm::RecordRecTy Class Reference (original) (raw)

'[classname]' - Type of record values that have zero or more superclasses. More...

#include "[llvm/TableGen/Record.h](TableGen%5F2Record%5F8h%5Fsource.html)"

Public Member Functions
RecordRecTy (const RecordRecTy &)=delete
RecordRecTy & operator= (const RecordRecTy &)=delete
void operator delete (void *Ptr)
void Profile (FoldingSetNodeID &ID) const
ArrayRef< const Record * > getClasses () const
const_record_iterator classes_begin () const
const_record_iterator classes_end () const
std::string getAsString () const override
bool isSubClassOf (const Record *Class) const
bool typeIsConvertibleTo (const RecTy *RHS) const override
Return true if all values of 'this' type can be converted to the specified type.
bool typeIsA (const RecTy *RHS) const override
Return true if 'this' type is equal to or a subtype of RHS.
Public Member Functions inherited from llvm::RecTy
RecTy (RecTyKind K, RecordKeeper &RK)
virtual ~RecTy ()=default
RecTyKind getRecTyKind () const
RecordKeeper & getRecordKeeper () const
Return the RecordKeeper that uniqued this Type.
void print (raw_ostream &OS) const
void dump () const
const ListRecTy * getListTy () const
Returns the type representing list.
Public Member Functions inherited from llvm::FoldingSetBase::Node
Node ()=default
void * getNextInBucket () const
void SetNextInBucket (void *N)

'[classname]' - Type of record values that have zero or more superclasses.

The list of superclasses is non-redundant, i.e. only contains classes that are not the superclass of some other listed class.

Definition at line 232 of file Record.h.

const_record_iterator

classes_begin()

const_record_iterator llvm::RecordRecTy::classes_begin ( ) const inline

classes_end()

const_record_iterator llvm::RecordRecTy::classes_end ( ) const inline

classof()

get() [1/2]

get() [2/2]

Get the record type with the given non-redundant list of superclasses.

Definition at line 242 of file Record.cpp.

References detail::RecordKeeperImpl::Allocator, detail::RecordKeeperImpl::AnyRecord, assert(), llvm::ArrayRef< T >::empty(), llvm::FoldingSetImpl< Derived, T >::FindNodeOrInsertPos(), llvm::FoldingSetImpl< Derived, T >::InsertNode(), isSubClassOf(), ProfileRecordRecTy(), Record, detail::RecordKeeperImpl::RecordTypePool, llvm::SmallVectorTemplateCommon< T, typename >::size(), llvm::sort(), and llvm::TrailingObjects< RecordRecTy, const Record * >::totalSizeToAlloc().

Referenced by get(), llvm::Record::getType(), and resolveRecordTypes().

getAsString()

std::string RecordRecTy::getAsString ( ) const overridevirtual

getClasses()

isSubClassOf()

operator delete()

void llvm::RecordRecTy::operator delete ( void * Ptr) inline

operator=()

Profile()

typeIsA()

typeIsConvertibleTo()

bool RecordRecTy::typeIsConvertibleTo ( const RecTy * RHS) const overridevirtual

Record


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