in src/parser/WDL/hermes/wdl_parser.js [2647:2682]
function parse_call(ctx) {
var current = ctx.tokens.current();
var rule = current != null ? table[49][current.id] : -1;
var tree = new ParseTree(new NonTerminal(107, 'call'));
var ast_parameters;
var subtree;
var t;
ctx.nonterminal = "call";
if (current == null) {
throw new SyntaxError('Error: unexpected end of file');
}
if (rule == 53) { // $call = :call :fqn $_gen11 $_gen12 -> Call( task=$1, alias=$2, body=$3 )
ctx.rule = rules[53];
ast_parameters = {
'task': 1,
'alias': 2,
'body': 3,
}
tree.astTransform = new AstTransformNodeCreator('Call', ast_parameters);
t = expect(ctx, 12); // :call
tree.add(t);
t = expect(ctx, 40); // :fqn
tree.add(t);
subtree = parse__gen11(ctx);
tree.add(subtree);
subtree = parse__gen12(ctx);
tree.add(subtree);
return tree;
}
throw new SyntaxError(ctx.error_formatter.unexpected_symbol(
ctx.nonterminal,
ctx.tokens.current(),
nonterminal_first[107],
rules[53]
));
}