module SQLiterate
grammar Literals include Space include Identifier include Keywords include String rule literal_value multi_string / numeric_literal / boolean_literal end rule positional_param '$' digits <Node::PositionalParam> end rule numeric_literal decimal_literal exponent_literal <Node::NumericLiteral> / decimal_literal end rule decimal_literal ( digits ( '.' digits? )? / '.' digits ) <Node::DecimalLiteral> end rule exponent_literal 'e' s:( '+' / '-' )? digits <Node::ExponentLiteral> end rule digits [0-9]+ <Node::Digits> end rule boolean_literal true_kw <Node::Boolean::True> / false_kw <Node::Boolean::False> end end
end