class ListInit

Declaration

class ListInit : public TypedInit, public Node, public TrailingObjects { /* full declaration omitted */ };

Description

[AL, AH, CL] - Represent a list of defs

Declared at: llvm/include/llvm/TableGen/Record.h:693

Inherits from: TypedInit, FoldingSetBase::Node, TrailingObjects

Member Variables

private unsigned int NumValues

Inherited from Init:

protected Opc

Method Overview

  • public ListInit(const llvm::ListInit &)
  • private ListInit(unsigned int N, llvm::RecTy * EltTy)
  • public void Profile(llvm::FoldingSetNodeID & ID) const
  • public llvm::ListInit::const_iterator begin() const
  • public static bool classof(const llvm::Init * I)
  • public llvm::Init * convertInitListSlice(ArrayRef<unsigned int> Elements) const
  • public llvm::Init * convertInitializerTo(llvm::RecTy * Ty) const
  • public bool empty() const
  • public llvm::ListInit::const_iterator end() const
  • public static llvm::ListInit * get(ArrayRef<llvm::Init *> Range, llvm::RecTy * EltTy)
  • public std::string getAsString() const
  • public llvm::Init * getBit(unsigned int Bit) const
  • public llvm::Init * getElement(unsigned int i) const
  • public llvm::Record * getElementAsRecord(unsigned int i) const
  • public llvm::RecTy * getElementType() const
  • public ArrayRef<llvm::Init *> getValues() const
  • public bool isComplete() const
  • public bool isConcrete() const
  • public llvm::Init * resolveReferences(llvm::Resolver & R) const
  • public size_t size() const

Inherited from FoldingSetBase::Node:

Inherited from TypedInit:

Inherited from Init:

Methods

ListInit(const llvm::ListInit&)

Declared at: llvm/include/llvm/TableGen/Record.h:705

Parameters

const llvm::ListInit&

ListInit(unsigned int N, llvm::RecTy* EltTy)

Declared at: llvm/include/llvm/TableGen/Record.h:701

Parameters

unsigned int N
llvm::RecTy* EltTy

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: llvm/include/llvm/TableGen/Record.h:716

Parameters

llvm::FoldingSetNodeID& ID

llvm::ListInit::const_iterator begin() const

Declared at: llvm/include/llvm/TableGen/Record.h:747

static bool classof(const llvm::Init* I)

Declared at: llvm/include/llvm/TableGen/Record.h:711

Parameters

const llvm::Init* I

llvm::Init* convertInitListSlice(
    ArrayRef<unsigned int> Elements) const

Description

This function is used to implement the list slice selection operator. Given a value, it selects the specified list elements, returning them as a new \p Init of type \p list. If it is not legal to use the slice operator, null is returned.

Declared at: llvm/include/llvm/TableGen/Record.h:728

Parameters

ArrayRef<unsigned int> Elements

llvm::Init* convertInitializerTo(
    llvm::RecTy* Ty) const

Description

Convert to a value whose type is \p Ty, or return null if this is not possible. This can happen if the value's type is convertible to \p Ty, but there are unresolved references.

Declared at: llvm/include/llvm/TableGen/Record.h:730

Parameters

llvm::RecTy* Ty

bool empty() const

Declared at: llvm/include/llvm/TableGen/Record.h:751

llvm::ListInit::const_iterator end() const

Declared at: llvm/include/llvm/TableGen/Record.h:748

static llvm::ListInit* get(
    ArrayRef<llvm::Init*> Range,
    llvm::RecTy* EltTy)

Declared at: llvm/include/llvm/TableGen/Record.h:714

Parameters

ArrayRef<llvm::Init*> Range
llvm::RecTy* EltTy

std::string getAsString() const

Description

Convert this value to a literal form.

Declared at: llvm/include/llvm/TableGen/Record.h:741

llvm::Init* getBit(unsigned int Bit) const

Description

Get the \p Init value of the specified bit.

Declared at: llvm/include/llvm/TableGen/Record.h:753

Parameters

unsigned int Bit

llvm::Init* getElement(unsigned int i) const

Declared at: llvm/include/llvm/TableGen/Record.h:718

Parameters

unsigned int i

llvm::Record* getElementAsRecord(
    unsigned int i) const

Declared at: llvm/include/llvm/TableGen/Record.h:726

Parameters

unsigned int i

llvm::RecTy* getElementType() const

Declared at: llvm/include/llvm/TableGen/Record.h:722

ArrayRef<llvm::Init*> getValues() const

Declared at: llvm/include/llvm/TableGen/Record.h:743

bool isComplete() const

Description

Is this a complete value with no unset (uninitialized) subvalues?

Declared at: llvm/include/llvm/TableGen/Record.h:739

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:740

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 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.

Declared at: llvm/include/llvm/TableGen/Record.h:737

Parameters

llvm::Resolver& R

size_t size() const

Declared at: llvm/include/llvm/TableGen/Record.h:750