Implements return statement
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2019-06-07 15:23:13 +02:00
parent f143e526ab
commit f4a3918947
12 changed files with 145 additions and 18 deletions

View File

@@ -72,7 +72,7 @@ bool Script::HasFunction(const string &key) {
return f != _scriptVariables->end() && f.operator->()->second->GetType()->GetClass() == TypeClass ::Function;
}
EvalValue *Script::CallFunction(const string &key, vector<EvalValue *> variables) {
shared_ptr<EvalValue> Script::CallFunction(const string &key, vector<EvalValue *> variables) {
auto var = (ScriptFunctionEvalValue*)GetVariable(key);
return this->_evaluator->EvaluateFunction(var, std::move(variables));
}
@@ -104,7 +104,7 @@ extern "C" {
EvalValue* CallFunction(Script* script, const char* key, EvalValue* parameters[], int parameterCount){
std::vector<EvalValue*> v(parameters, parameters + parameterCount);
return script->CallFunction(key, v);
return script->CallFunction(key, v).get();
}
}