From 00cc24690392707ec871754d8eb962e9e9406d30 Mon Sep 17 00:00:00 2001 From: Jeremy Wall Date: Wed, 27 Feb 2019 19:19:44 -0600 Subject: [PATCH] FEATURE: Allow trailing commas in map, filter, and reduce expressions. --- src/parse/mod.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/parse/mod.rs b/src/parse/mod.rs index e85b2b4..b1445de 100644 --- a/src/parse/mod.rs +++ b/src/parse/mod.rs @@ -563,6 +563,7 @@ fn call_expression(input: SliceIter) -> Result, Expressi callee_name => trace_parse!(symbol), _ => punct!("("), args => optional!(separated!(punct!(","), trace_parse!(expression))), + _ => optional!(punct!(",")), _ => must!(punct!(")")), (callee_name, args) ); @@ -592,6 +593,7 @@ make_fn!( acc => must!(trace_parse!(expression)), _ => must!(punct!(",")), tgt => must!(trace_parse!(expression)), + _ => optional!(punct!(",")), _ => must!(punct!(")")), (Expression::FuncOp(FuncOpDef::Reduce(ReduceOpDef{ func: Box::new(func), @@ -611,6 +613,7 @@ make_fn!( func => must!(expression), _ => must!(punct!(",")), list => must!(trace_parse!(expression)), + _ => optional!(punct!(",")), _ => must!(punct!(")")), (Expression::FuncOp(FuncOpDef::Map(MapFilterOpDef{ func: Box::new(func), @@ -629,6 +632,7 @@ make_fn!( func => must!(expression), _ => must!(punct!(",")), list => must!(trace_parse!(expression)), + _ => optional!(punct!(",")), _ => must!(punct!(")")), (Expression::FuncOp(FuncOpDef::Filter(MapFilterOpDef{ func: Box::new(func),