diff options
Diffstat (limited to 'examples/OCaml-Kaleidoscope/Chapter7/token.ml')
-rw-r--r-- | examples/OCaml-Kaleidoscope/Chapter7/token.ml | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/examples/OCaml-Kaleidoscope/Chapter7/token.ml b/examples/OCaml-Kaleidoscope/Chapter7/token.ml new file mode 100644 index 0000000..1489f0b --- /dev/null +++ b/examples/OCaml-Kaleidoscope/Chapter7/token.ml @@ -0,0 +1,25 @@ +(*===----------------------------------------------------------------------=== + * Lexer Tokens + *===----------------------------------------------------------------------===*) + +(* The lexer returns these 'Kwd' if it is an unknown character, otherwise one of + * these others for known things. *) +type token = + (* commands *) + | Def | Extern + + (* primary *) + | Ident of string | Number of float + + (* unknown *) + | Kwd of char + + (* control *) + | If | Then | Else + | For | In + + (* operators *) + | Binary | Unary + + (* var definition *) + | Var |