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) constDescription
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) constDescription
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) constDescription
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() constDescription
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() constDescription
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() constDescription
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) constDescription
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) constDescription
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) constDescription
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() constDeclared at: llvm/include/llvm/TableGen/Record.h:340
¶virtual bool isComplete() const
virtual bool isComplete() constDescription
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() constDescription
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) constDescription
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) constDescription
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