From b5fb8933af283d2b873a03ded085e8b69f374e81 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Tue, 12 Jun 2018 15:12:27 -0700 Subject: Removed dependency on 'immutable' library. This lets LuaJIT do more aggressive optimizations and generally helps performance. Some safety is lost, but I think the performance gains, reduced complexity, and reduced dependencies are worth it. --- nomsu.peg | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'nomsu.peg') diff --git a/nomsu.peg b/nomsu.peg index ec40211..2de5292 100644 --- a/nomsu.peg +++ b/nomsu.peg @@ -98,11 +98,11 @@ text_interpolation: inline_text_interpolation / ("\" indented_expression nodent "..") -number (Number): (("-"? (([0-9]+ "." [0-9]+) / ("." [0-9]+) / ([0-9]+)))-> tonumber) +number (Number): {| {:value: (("-"? (([0-9]+ "." [0-9]+) / ("." [0-9]+) / ([0-9]+)))-> tonumber) :} |} -- Variables can be nameless (i.e. just %) and can't contain operators like apostrophe -- which is a hack to allow %'s to parse as "%" and "' s" separately -variable (Var): "%" { (%ident_char+ ((!"'" %operator_char+) / %ident_char+)*)? } +variable (Var): "%" {| {:value: (%ident_char+ ((!"'" %operator_char+) / %ident_char+)*)? :} |} inline_list (List): !('[..]') -- cgit v1.2.3