ONE - On-device Neural Engine
Loading...
Searching...
No Matches
nnc::ArtifactFunctionCall Class Reference

Represents a function call. More...

#include <ArtifactModel.h>

Collaboration diagram for nnc::ArtifactFunctionCall:

Public Member Functions

 ArtifactFunctionCall (std::string func_name, std::list< std::shared_ptr< ArtifactExpr > > param_list, std::shared_ptr< ArtifactExpr > on=nullptr, ArtifactCallType call_type=ArtifactCallType::obj)
 
void accept (IArtifactGenerator *g) const override
 This is the core function of each artifact entity and is implemented by all concrete classes in the hierarchy.
 
const std::string & funcName () const
 
const std::list< std::shared_ptr< ArtifactExpr > > & paramList () const
 
std::shared_ptr< ArtifactExpron () const
 
ArtifactCallType callType () const
 
- Public Member Functions inherited from nnc::ArtifactEntity
virtual ~ArtifactEntity ()=default
 
virtual bool isBlock () const
 If this entity represents something containing a block of instructions.
 

Additional Inherited Members

- Protected Member Functions inherited from nnc::ArtifactEntity
 ArtifactEntity ()=default
 

Detailed Description

Represents a function call.

Definition at line 169 of file ArtifactModel.h.

Constructor & Destructor Documentation

◆ ArtifactFunctionCall()

nnc::ArtifactFunctionCall::ArtifactFunctionCall ( std::string  func_name,
std::list< std::shared_ptr< ArtifactExpr > >  param_list,
std::shared_ptr< ArtifactExpr on = nullptr,
ArtifactCallType  call_type = ArtifactCallType::obj 
)

Definition at line 25 of file ArtifactModel.cpp.

28 : _funcName(std::move(func_name)), _callType(call_type), _on(std::move(on)),
29 _paramList(std::move(param_list))
30{
31}
std::shared_ptr< ArtifactExpr > on() const

Member Function Documentation

◆ accept()

void nnc::ArtifactFunctionCall::accept ( IArtifactGenerator g) const
inlineoverridevirtual

This is the core function of each artifact entity and is implemented by all concrete classes in the hierarchy.

Implements nnc::ArtifactEntity.

Definition at line 176 of file ArtifactModel.h.

176{ g->visit(this); }

◆ callType()

ArtifactCallType nnc::ArtifactFunctionCall::callType ( ) const
inline

Definition at line 181 of file ArtifactModel.h.

181{ return _callType; }

Referenced by nnc::ArtifactGeneratorCppCode::visit().

◆ funcName()

const std::string & nnc::ArtifactFunctionCall::funcName ( ) const
inline

Definition at line 178 of file ArtifactModel.h.

178{ return _funcName; }

Referenced by nnc::ArtifactGeneratorCppCode::visit().

◆ on()

std::shared_ptr< ArtifactExpr > nnc::ArtifactFunctionCall::on ( ) const
inline

Definition at line 180 of file ArtifactModel.h.

180{ return _on; }

Referenced by nnc::ArtifactGeneratorCppCode::visit().

◆ paramList()

const std::list< std::shared_ptr< ArtifactExpr > > & nnc::ArtifactFunctionCall::paramList ( ) const
inline

Definition at line 179 of file ArtifactModel.h.

179{ return _paramList; }

Referenced by nnc::ArtifactGeneratorCppCode::visit().


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