forked from ground/ground
pusharg takes multiple args at same time
This commit is contained in:
14
src/main.cpp
14
src/main.cpp
@@ -1911,12 +1911,14 @@ Literal exec(vector<Instruction> in, bool executingFunction) {
|
||||
if (l.args.size() < 1) {
|
||||
error("Could not find all arguments required for Endfun inbuilt");
|
||||
}
|
||||
if (holds_alternative<Literal>(l.args[0])) {
|
||||
fnArgs.push_back(get<Literal>(l.args[0]));
|
||||
} else if (holds_alternative<ListRef>(l.args[0])) {
|
||||
fnArgs.push_back(variables[get<ListRef>(l.args[0]).listName]);
|
||||
} else {
|
||||
error("First argument of pusharg must be a literal or list reference");
|
||||
for (int k = 0; k < l.args.size(); k++) {
|
||||
if (holds_alternative<Literal>(l.args[k])) {
|
||||
fnArgs.push_back(get<Literal>(l.args[k]));
|
||||
} else if (holds_alternative<ListRef>(l.args[k])) {
|
||||
fnArgs.push_back(variables[get<ListRef>(l.args[k]).listName]);
|
||||
} else {
|
||||
error("First argument of pusharg must be a literal or list reference");
|
||||
}
|
||||
}
|
||||
break;
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user