summaryrefslogtreecommitdiff
path: root/tokenizer.sig
diff options
context:
space:
mode:
authorVladimir Azarov <avm@intermediate-node.net>2025-05-26 14:42:35 +0200
committerVladimir Azarov <avm@intermediate-node.net>2025-05-26 14:42:35 +0200
commit6f3fa80b37ca5f8d992f5d6f66aee77ead303bf4 (patch)
tree1d3099280e63fac03d906b24bc6b877840348eab /tokenizer.sig
parentc6b6203f8420f76a47433717eab8026d524ec5c1 (diff)
Symbol table
Diffstat (limited to 'tokenizer.sig')
-rw-r--r--tokenizer.sig11
1 files changed, 7 insertions, 4 deletions
diff --git a/tokenizer.sig b/tokenizer.sig
index 3a711a4..67666a4 100644
--- a/tokenizer.sig
+++ b/tokenizer.sig
@@ -1,4 +1,5 @@
signature TOKENIZER = sig
+ structure ST: SYMTAB
structure S: STREAM
datatype intType = ItDec | ItOct | ItHex
@@ -13,11 +14,11 @@ signature TOKENIZER = sig
Invalid |
EOS |
NewLine |
- MacroEnd of string |
+ MacroEnd of int |
Num of numConst |
- Id of string |
+ Id of int |
CharConst of string * int |
StringConst of string |
@@ -123,8 +124,10 @@ signature TOKENIZER = sig
PpcError |
PpcPragma
- val getToken: S.t -> token * S.pos * S.t
- val Ptk: (token, 'a, 'b, 'c) a1printer
+ val initSymtab: unit -> token ST.t
+
+ val getToken: token ST.t -> S.t -> token * S.pos * S.t
+ val Ptk: (token ST.t, token, 'a, 'b, 'c) a2printer
val isPpcDir: token -> bool
val debugPrint: string -> unit