-
Notifications
You must be signed in to change notification settings - Fork 0
/
tiger.grm.sig
57 lines (57 loc) · 2.04 KB
/
tiger.grm.sig
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
signature Tiger_TOKENS =
sig
type ('a,'b) token
type svalue
val TYPE: 'a * 'a -> (svalue,'a) token
val VAR: 'a * 'a -> (svalue,'a) token
val FUNCTION: 'a * 'a -> (svalue,'a) token
val NIL: 'a * 'a -> (svalue,'a) token
val BREAK: 'a * 'a -> (svalue,'a) token
val OF: 'a * 'a -> (svalue,'a) token
val END: 'a * 'a -> (svalue,'a) token
val IN: 'a * 'a -> (svalue,'a) token
val LET: 'a * 'a -> (svalue,'a) token
val DO: 'a * 'a -> (svalue,'a) token
val TO: 'a * 'a -> (svalue,'a) token
val FOR: 'a * 'a -> (svalue,'a) token
val WHILE: 'a * 'a -> (svalue,'a) token
val ELSE: 'a * 'a -> (svalue,'a) token
val THEN: 'a * 'a -> (svalue,'a) token
val IF: 'a * 'a -> (svalue,'a) token
val ARRAY: 'a * 'a -> (svalue,'a) token
val ASSIGN: 'a * 'a -> (svalue,'a) token
val OR: 'a * 'a -> (svalue,'a) token
val AND: 'a * 'a -> (svalue,'a) token
val GE: 'a * 'a -> (svalue,'a) token
val GT: 'a * 'a -> (svalue,'a) token
val LE: 'a * 'a -> (svalue,'a) token
val LT: 'a * 'a -> (svalue,'a) token
val NEQ: 'a * 'a -> (svalue,'a) token
val EQ: 'a * 'a -> (svalue,'a) token
val UMINUS: 'a * 'a -> (svalue,'a) token
val DIVIDE: 'a * 'a -> (svalue,'a) token
val TIMES: 'a * 'a -> (svalue,'a) token
val MINUS: 'a * 'a -> (svalue,'a) token
val PLUS: 'a * 'a -> (svalue,'a) token
val DOT: 'a * 'a -> (svalue,'a) token
val RBRACE: 'a * 'a -> (svalue,'a) token
val LBRACE: 'a * 'a -> (svalue,'a) token
val RBRACK: 'a * 'a -> (svalue,'a) token
val LBRACK: 'a * 'a -> (svalue,'a) token
val RPAREN: 'a * 'a -> (svalue,'a) token
val LPAREN: 'a * 'a -> (svalue,'a) token
val SEMICOLON: 'a * 'a -> (svalue,'a) token
val COLON: 'a * 'a -> (svalue,'a) token
val COMMA: 'a * 'a -> (svalue,'a) token
val STRING: (string) * 'a * 'a -> (svalue,'a) token
val INT: (int) * 'a * 'a -> (svalue,'a) token
val ID: (string) * 'a * 'a -> (svalue,'a) token
val EOF: 'a * 'a -> (svalue,'a) token
end
signature Tiger_LRVALS=
sig
structure Tokens : Tiger_TOKENS
structure ParserData:PARSER_DATA
sharing type ParserData.Token.token = Tokens.token
sharing type ParserData.svalue = Tokens.svalue
end