CIRCT  19.0.0git
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
circt::om::evaluator::TupleValue Struct Reference

Tuple values. More...

#include <Evaluator.h>

Inheritance diagram for circt::om::evaluator::TupleValue:
Inheritance graph
Collaboration diagram for circt::om::evaluator::TupleValue:
Collaboration graph

Public Types

using TupleElements = llvm::SmallVector< EvaluatorValuePtr >
- Public Types inherited from circt::om::evaluator::EvaluatorValue
enum class  Kind {
  Attr , Object , List , Tuple ,
  Map , Reference , BasePath , Path

Public Member Functions

 TupleValue (TupleType type, TupleElements tupleElements, Location loc)
 TupleValue (TupleType type, Location loc)
void setElements (TupleElements newElements)
LogicalResult finalizeImpl ()
TupleType getTupleType () const
 Return the type of the value, which is a TupleType. More...
const TupleElementsgetElements () const
- Public Member Functions inherited from circt::om::evaluator::EvaluatorValue
 EvaluatorValue (MLIRContext *ctx, Kind kind, Location loc)
Kind getKind () const
MLIRContext * getContext () const
bool isFullyEvaluated () const
void markFullyEvaluated ()
MLIRContext * getContext ()
 Return the associated MLIR context. More...
Type getType () const
LogicalResult finalize ()
Location getLoc () const
void setLoc (Location l)
void setLocIfUnknown (Location l)

Static Public Member Functions

static bool classof (const EvaluatorValue *e)
 Implement LLVM RTTI. More...

Private Attributes

TupleType type
TupleElements elements

Detailed Description

Tuple values.

Definition at line 308 of file Evaluator.h.

Member Typedef Documentation

◆ TupleElements

Definition at line 309 of file Evaluator.h.

Constructor & Destructor Documentation

◆ TupleValue() [1/2]

circt::om::evaluator::TupleValue::TupleValue ( TupleType  type,
TupleElements  tupleElements,
Location  loc 

◆ TupleValue() [2/2]

circt::om::evaluator::TupleValue::TupleValue ( TupleType  type,
Location  loc 

Definition at line 317 of file Evaluator.h.

Member Function Documentation

◆ classof()

static bool circt::om::evaluator::TupleValue::classof ( const EvaluatorValue e)

Implement LLVM RTTI.

Definition at line 333 of file Evaluator.h.

References circt::om::evaluator::EvaluatorValue::getKind(), and circt::om::evaluator::EvaluatorValue::Tuple.

◆ finalizeImpl()

LogicalResult circt::om::evaluator::TupleValue::finalizeImpl ( )

Definition at line 325 of file Evaluator.h.

References elements, and circt::om::evaluator::finalizeEvaluatorValue().

◆ getElements()

const TupleElements& circt::om::evaluator::TupleValue::getElements ( ) const

Definition at line 340 of file Evaluator.h.

References elements.

◆ getTupleType()

TupleType circt::om::evaluator::TupleValue::getTupleType ( ) const

Return the type of the value, which is a TupleType.

Definition at line 338 of file Evaluator.h.

References type.

◆ setElements()

void circt::om::evaluator::TupleValue::setElements ( TupleElements  newElements)

Member Data Documentation

◆ elements

TupleElements circt::om::evaluator::TupleValue::elements

Definition at line 344 of file Evaluator.h.

Referenced by finalizeImpl(), getElements(), and setElements().

◆ type

TupleType circt::om::evaluator::TupleValue::type

The documentation for this struct was generated from the following file: