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

A Map value. More...

#include <Evaluator.h>

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

Public Member Functions

 MapValue (om::MapType type, DenseMap< Attribute, EvaluatorValuePtr > elements, Location loc)
 MapValue (om::MapType type, Location loc)
const auto & getElements () const
void setElements (DenseMap< Attribute, EvaluatorValuePtr > newElements)
LogicalResult finalizeImpl ()
om::MapType getMapType () const
 Return the type of the value, which is a MapType. More...
ArrayAttr getKeys ()
 Return an array of keys in the ascending order. More...
- 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

om::MapType type
DenseMap< Attribute, EvaluatorValuePtrelements

Additional Inherited Members

- Public Types inherited from circt::om::evaluator::EvaluatorValue
enum class  Kind {
  Attr , Object , List , Tuple ,
  Map , Reference , BasePath , Path

Detailed Description

A Map value.

Definition at line 219 of file Evaluator.h.

Constructor & Destructor Documentation

◆ MapValue() [1/2]

circt::om::evaluator::MapValue::MapValue ( om::MapType  type,
DenseMap< Attribute, EvaluatorValuePtr elements,
Location  loc 

◆ MapValue() [2/2]

circt::om::evaluator::MapValue::MapValue ( om::MapType  type,
Location  loc 

Definition at line 228 of file Evaluator.h.

Member Function Documentation

◆ classof()

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

Implement LLVM RTTI.

Definition at line 247 of file Evaluator.h.

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

◆ finalizeImpl()

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

Definition at line 742 of file Evaluator.cpp.

References circt::om::evaluator::finalizeEvaluatorValue().

◆ getElements()

const auto& circt::om::evaluator::MapValue::getElements ( ) const

Definition at line 231 of file Evaluator.h.

References elements.

◆ getKeys()

ArrayAttr circt::om::evaluator::MapValue::getKeys ( )

Return an array of keys in the ascending order.

Definition at line 724 of file Evaluator.cpp.

References circt::calyx::direction::get().

◆ getMapType()

om::MapType circt::om::evaluator::MapValue::getMapType ( ) const

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

Definition at line 241 of file Evaluator.h.

References type.

◆ setElements()

void circt::om::evaluator::MapValue::setElements ( DenseMap< Attribute, EvaluatorValuePtr newElements)

Member Data Documentation

◆ elements

DenseMap<Attribute, EvaluatorValuePtr> circt::om::evaluator::MapValue::elements

Definition at line 253 of file Evaluator.h.

Referenced by getElements(), and setElements().

◆ type

om::MapType circt::om::evaluator::MapValue::type

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