syncFunctionDef method
Implementation
Parser<FunctionDefNode> syncFunctionDef() =>
seq6(
ref0(defToken),
ref0(identifier),
ref0(typeParams).optional(),
ref0(parameters),
seq2(ref1(token, '->'), ref0(expression)).map2((_, e) => e).optional(),
seq2(ref1(token, ':'), ref0(suite)).map2((_, s) => s),
).map6(
(_, name, tParams, params, returns, body) => FunctionDefNode(
name: name,
args: params,
body: body,
returns: returns,
typeParams: tParams ?? const [],
),
);