Sha256: 1703eff95d95cf408c24fe5bc4c7bf2763e09a052d9b0e09e90e66a9fbb2b2c0

Contents?: true

Size: 603 Bytes

Versions: 5

Compression:

Stored size: 603 Bytes

Contents

%require "~> 0.1"
%generator "ruby"

%define api.push-pull pull
%define panic-mode true
%token <lex> NUMBER
%token <lex> SEMICOLON ";"
%token <lex> ADD "+"
%token <lex> LPAREN "("
%token <lex> RPAREN ")"

%type <node> s e t

%null.data api.prefix "antelope_"
%union {
  struct slip_parser_node* node;
  struct slip_lex_token* lex;
  struct slip_parser_list* list;
}

%%

s: e
e: t[a] SEMICOLON[b] { $$ = $1 }
 | t[a] ADD[b] e[c]  { $$ = $1 + $2 }
 | error[a]

t: NUMBER
 | LPAREN e RPAREN   { $$ = $2 }

%%

class DeterministicParser < Antelope::Parser
  %{write}
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
antelope-0.3.2 examples/deterministic.ace
antelope-0.3.0 examples/deterministic.ace
antelope-0.2.4 examples/deterministic.ace
antelope-0.2.3 examples/deterministic.ace
antelope-0.2.2 examples/deterministic.ace