private static ParserExpr Terms(ParserExpr recursion) => OneOf( IdentifierWithSubscript, Identifier, Float, Literal, Parenthesized(recursion).Labelled("parenthesized Expression"), CurlyBraced(recursion).Labelled("Curly Bracked Expression"), Bracketed(recursion).Labelled("Bracketed") );
private static OperatorRow[] FunctionCallOperators(ParserExpr recursion) => new[] { Operator.PostfixChainable(Parenthesized(recursion.Separated(Tok(","))).Select(CreateCall).Labelled("function call")) };