17 std::vector < std::unique_ptr < Expression > > m_params;
20 FunctionCallExpression ( std::string name, std::vector < std::unique_ptr < Expression > > params ) : m_name (
std::move ( name ) ), m_params (
std::move ( params ) ) {
24 std::shared_ptr < abstraction::Value >
result;
27 for (
const std::unique_ptr < Expression > & param : m_params ) {
28 std::shared_ptr < abstraction::Value > value = param->translateAndEval ( environment );
30 params.push_back ( value );
33 std::string name = m_name;
AlgorithmCategory
Definition: AlgorithmCategories.hpp:14
static std::shared_ptr< abstraction::Value > evalAlgorithm(abstraction::TemporariesHolder &environment, const std::string &name, const ext::vector< std::string > &templateParams, const ext::vector< std::shared_ptr< abstraction::Value > > ¶ms, abstraction::AlgorithmCategories::AlgorithmCategory category)
Definition: EvalHelper.cpp:14
void holdTemporary(std::shared_ptr< abstraction::Value > temporary)
Definition: TemporariesHolder.cpp:10
Definition: Environment.h:29
Definition: Expression.h:14
Definition: FunctionCallExpression.h:15
FunctionCallExpression(std::string name, std::vector< std::unique_ptr< Expression > > params)
Definition: FunctionCallExpression.h:20
std::shared_ptr< abstraction::Value > translateAndEval(Environment &environment) const override
Definition: FunctionCallExpression.h:23
Class extending the vector class from the standard library. Original reason is to allow printing of t...
Definition: vector.hpp:45
for(const StateType &state :fsm.getStates()) renamingData.insert(std Rename::RenamedAutomaton< T > result(renamingData.at(fsm.getInitialState()))
Definition: Rename.h:253
Definition: FordFulkerson.hpp:16