File: LR.y

package info (click to toggle)
frown 0.6.1-13
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 9,956 kB
  • sloc: haskell: 35,132; makefile: 228; csh: 35; yacc: 23
file content (32 lines) | stat: -rw-r--r-- 311 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{

module Parser
where

data Terminal                   =  A | B | C | D

}

%name parseS S
%name parseX X
%tokentype { Terminal }
%token
      a { A }
      b { B }
      c { C }
      d { D }

%%

S : X a   {}
  | b X c {}
  | Y c   {}
  | b Y a {}

X : d {}

Y : d {}

{
happyError _ = error "parse error"
}