UNPKG

@fink/larix

Version:

A parser for generating fink's AST.

37 lines (30 loc) 596 B
const { curr_value, curr_loc } = require("@fink/prattler/parser.js"); const { add_literal, non_binding } = require("@fink/prattler/expressions.js"); const number = ctx => { const { start, end } = curr_loc(ctx); const value = curr_value(ctx); return [{ type: `number`, value, loc: { start, end } }, ctx]; }; exports.number = number; const num = token_type => ({ ...non_binding(token_type), nud: () => ctx => number(ctx) }); exports.num = num; const add_number = ctx => add_literal(num(`number`))(ctx); exports.add_number = add_number;