class Init
Declaration
class Init { /* full declaration omitted */ };
Declared at: llvm/include/llvm/TableGen/Record.h:287
Member Variables
- protected uint8_t Opc
Method Overview
- protected Init(llvm::Init::InitKind K, uint8_t Opc = 0)
- public Init(const llvm::Init &)
- public virtual llvm::Init * convertInitListSlice(ArrayRef<unsigned int> Elements) const
- public virtual llvm::Init * convertInitializerBitRange(ArrayRef<unsigned int> Bits) const
- public virtual llvm::Init * convertInitializerTo(llvm::RecTy * Ty) const
- public void dump() const
- public virtual std::string getAsString() const
- public virtual std::string getAsUnquotedString() const
- public virtual llvm::Init * getBit(unsigned int Bit) const
- public virtual llvm::Init * getCastTo(llvm::RecTy * Ty) const
- public virtual llvm::RecTy * getFieldType(llvm::StringInit * FieldName) const
- public llvm::Init::InitKind getKind() const
- public virtual bool isComplete() const
- public virtual bool isConcrete() const
- public void print(llvm::raw_ostream & OS) const
- public virtual llvm::Init * resolveReferences(llvm::Resolver & R) const
- public virtual ~Init()
Methods
¶Init(llvm::Init::InitKind K, uint8_t Opc = 0)
Init(llvm::Init::InitKind K, uint8_t Opc = 0)
Declared at: llvm/include/llvm/TableGen/Record.h:343
Parameters
- llvm::Init::InitKind K
- uint8_t Opc = 0
¶Init(const llvm::Init&)
Init(const llvm::Init&)
Declared at: llvm/include/llvm/TableGen/Record.h:346
Parameters
- const llvm::Init&
¶virtual llvm::Init* convertInitListSlice(
ArrayRef<unsigned int> Elements) const
virtual llvm::Init* convertInitListSlice(
ArrayRef<unsigned int> Elements) const
Description
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.
Declared at: llvm/include/llvm/TableGen/Record.h:395
Parameters
- ArrayRef<unsigned int> Elements
¶virtual llvm::Init* convertInitializerBitRange(
ArrayRef<unsigned int> Bits) const
virtual llvm::Init* convertInitializerBitRange(
ArrayRef<unsigned int> Bits) const
Description
This method is used to implement the bitrange selection operator. Given an initializer, it selects the specified bits out, returning them as a new init of bits type. If it is not legal to use the bit subscript operator on this initializer, return null.
Declared at: llvm/include/llvm/TableGen/Record.h:387
Parameters
- ArrayRef<unsigned int> Bits
¶virtual llvm::Init* convertInitializerTo(
llvm::RecTy* Ty) const
virtual llvm::Init* convertInitializerTo(
llvm::RecTy* Ty) const
Description
Convert to an initializer whose type is-a Ty, or return nullptr if this is not possible (this can happen if the initializer's type is convertible to Ty, but there are unresolved references).
Declared at: llvm/include/llvm/TableGen/Record.h:381
Parameters
- llvm::RecTy* Ty
¶void dump() const
void dump() const
Description
Debugging method that may be called through a debugger, just invokes print on stderr.
Declared at: llvm/include/llvm/TableGen/Record.h:371
¶virtual std::string getAsString() const
virtual std::string getAsString() const
Description
Convert this value to a string form.
Declared at: llvm/include/llvm/TableGen/Record.h:362
¶virtual std::string getAsUnquotedString() const
virtual std::string getAsUnquotedString() const
Description
Convert this value to a string form, without adding quote markers. This primaruly affects StringInits where we will not surround the string value with quotes.
Declared at: llvm/include/llvm/TableGen/Record.h:367
¶virtual llvm::Init* getBit(unsigned int Bit) const
virtual llvm::Init* getBit(unsigned int Bit) const
Description
This method is used to return the initializer for the specified bit.
Declared at: llvm/include/llvm/TableGen/Record.h:416
Parameters
- unsigned int Bit
¶virtual llvm::Init* getCastTo(
llvm::RecTy* Ty) const
virtual llvm::Init* getCastTo(
llvm::RecTy* Ty) const
Description
If this initializer is convertible to Ty, return an initializer whose type is-a Ty, generating a !cast operation if required. Otherwise, return nullptr.
Declared at: llvm/include/llvm/TableGen/Record.h:376
Parameters
- llvm::RecTy* Ty
¶virtual llvm::RecTy* getFieldType(
llvm::StringInit* FieldName) const
virtual llvm::RecTy* getFieldType(
llvm::StringInit* FieldName) const
Description
This method is used to implement the FieldInit class. Implementors of this method should return the type of the named field if they are of record type.
Declared at: llvm/include/llvm/TableGen/Record.h:402
Parameters
- llvm::StringInit* FieldName
¶llvm::Init::InitKind getKind() const
llvm::Init::InitKind getKind() const
Declared at: llvm/include/llvm/TableGen/Record.h:340
¶virtual bool isComplete() const
virtual bool isComplete() const
Description
This virtual method should be overridden by values that may not be completely specified yet.
Declared at: llvm/include/llvm/TableGen/Record.h:352
¶virtual bool isConcrete() const
virtual bool isConcrete() const
Description
Is this a concrete and fully resolved value without any references or stuck operations? Unset values are concrete.
Declared at: llvm/include/llvm/TableGen/Record.h:356
¶void print(llvm::raw_ostream& OS) const
void print(llvm::raw_ostream& OS) const
Description
Print out this value.
Declared at: llvm/include/llvm/TableGen/Record.h:359
Parameters
¶virtual llvm::Init* resolveReferences(
llvm::Resolver& R) const
virtual llvm::Init* resolveReferences(
llvm::Resolver& R) const
Description
This method is used by classes that refer to other variables which may not be defined at the time the 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.
Declared at: llvm/include/llvm/TableGen/Record.h:410
Parameters
¶virtual ~Init()
virtual ~Init()
Declared at: llvm/include/llvm/TableGen/Record.h:348