ONE - On-device Neural Engine
Loading...
Searching...
No Matches
coco::Eval Class Referencefinal

Evaluate an Object from a given Op. More...

#include <Instrs.h>

Collaboration diagram for coco::Eval:

Public Member Functions

 Eval ()
 
EvalasEval (void) override
 
const EvalasEval (void) const override
 
Instrloc (void) override
 
Objectout (void) const
 
void out (Object *obj)
 
Opop (void) const
 
void op (Op *op)
 
- Public Member Functions inherited from coco::Instr
 Instr ()=default
 
 Instr (const Instr &)=delete
 
 Instr (Instr &&)=delete
 
virtual ~Instr ()
 
template<typename T >
accept (IVisitor< T > *v) const
 
template<typename T >
accept (IVisitor< T > &v) const
 
template<typename T >
accept (IVisitor< T > &&v) const
 
const InstrIndexindex (void) const
 
- Public Member Functions inherited from coco::DLinkedList< Child, Parent >::Node
 Node ()
 
virtual ~Node ()
 
Parent * parent (void) const
 
Child * prev (void) const
 
Child * next (void) const
 
void insertBefore (Node *next)
 
void insertAfter (Node *prev)
 
void detach (void)
 
- Public Member Functions inherited from coco::Entity
virtual ~Entity ()=default
 
Modulemodule (void) const
 
- Public Member Functions inherited from coco::Object::Producer
virtual ~Producer ()=default
 
- Public Member Functions inherited from coco::Bag::Updater
virtual ~Updater ()=default
 
- Public Member Functions inherited from coco::Locatable
virtual ~Locatable ()=default
 

Detailed Description

Evaluate an Object from a given Op.

Definition at line 42 of file Instrs.h.

Constructor & Destructor Documentation

◆ Eval()

coco::Eval::Eval ( )
explicit

Definition at line 23 of file Eval.cpp.

23 : _out{this}, _step{this}
24{
25 // DO NOTHING
26}

Member Function Documentation

◆ asEval() [1/2]

const Eval * coco::Eval::asEval ( void  ) const
inlineoverride

Definition at line 49 of file Instrs.h.

49{ return this; }

◆ asEval() [2/2]

Eval * coco::Eval::asEval ( void  )
inlineoverride

Definition at line 48 of file Instrs.h.

48{ return this; }

◆ loc()

Instr * coco::Eval::loc ( void  )
inlineoverridevirtual

Implements coco::Locatable.

Definition at line 52 of file Instrs.h.

52{ return this; }

◆ op() [1/2]

void coco::Eval::op ( Op op)
inline

Definition at line 60 of file Instrs.h.

60{ _step.op(op); }
Op * op(void) const
Definition Instrs.h:59
Op * op(void) const
Definition Step.h:41

References op(), and coco::Step::op().

◆ op() [2/2]

Op * coco::Eval::op ( void  ) const
inline

Definition at line 59 of file Instrs.h.

59{ return _step.op(); }

References coco::Step::op().

Referenced by InstrBuilder::eval(), op(), and InstrPrinter::visit().

◆ out() [1/2]

void coco::Eval::out ( Object obj)
inline

Definition at line 56 of file Instrs.h.

56{ _out.value(obj); }
Object * value(void) const
Definition Def.h:37

References coco::Def::value().

◆ out() [2/2]

Object * coco::Eval::out ( void  ) const
inline

Definition at line 55 of file Instrs.h.

55{ return _out.value(); }

References coco::Def::value().

Referenced by InstrPrinter::visit().


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