-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAssignmentParser.fsi
More file actions
87 lines (84 loc) · 1.72 KB
/
AssignmentParser.fsi
File metadata and controls
87 lines (84 loc) · 1.72 KB
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// Signature file for parser generated by fsyacc
module AssignmentParser
type token =
| ASSIGN
| SEMICOLON
| SKIP
| LBRACKET
| RBRACKET
| IF
| FI
| DO
| OD
| ASSERTS
| OR
| AND
| EQ
| LE
| GR
| NOT
| TRUE
| FALSE
| TIMES
| DIV
| PLUS
| MINUS
| POW
| LPAR
| RPAR
| EOF
| VAR of (string)
| NUM of (float)
type tokenId =
| TOKEN_ASSIGN
| TOKEN_SEMICOLON
| TOKEN_SKIP
| TOKEN_LBRACKET
| TOKEN_RBRACKET
| TOKEN_IF
| TOKEN_FI
| TOKEN_DO
| TOKEN_OD
| TOKEN_ASSERTS
| TOKEN_OR
| TOKEN_AND
| TOKEN_EQ
| TOKEN_LE
| TOKEN_GR
| TOKEN_NOT
| TOKEN_TRUE
| TOKEN_FALSE
| TOKEN_TIMES
| TOKEN_DIV
| TOKEN_PLUS
| TOKEN_MINUS
| TOKEN_POW
| TOKEN_LPAR
| TOKEN_RPAR
| TOKEN_EOF
| TOKEN_VAR
| TOKEN_NUM
| TOKEN_end_of_input
| TOKEN_error
type nonTerminalId =
| NONTERM__startstart
| NONTERM_start
| NONTERM_command
| NONTERM_guardedCommand
| NONTERM_aExpr0
| NONTERM_aExpr1
| NONTERM_aExpr2
| NONTERM_aExpr3
| NONTERM_bExpr0
| NONTERM_bExpr1
| NONTERM_bExpr2
| NONTERM_bExpr3
/// This function maps tokens to integer indexes
val tagOfToken: token -> int
/// This function maps integer indexes to symbolic token ids
val tokenTagToTokenId: int -> tokenId
/// This function maps production indexes returned in syntax errors to strings representing the non terminal that would be produced by that production
val prodIdxToNonTerminal: int -> nonTerminalId
/// This function gets the name of a token as a string
val token_to_string: token -> string
val start : (FSharp.Text.Lexing.LexBuffer<'cty> -> token) -> FSharp.Text.Lexing.LexBuffer<'cty> -> (command)