diff options
author | Vladimir Azarov <avm@intermediate-node.net> | 2025-05-12 01:51:27 +0200 |
---|---|---|
committer | Vladimir Azarov <avm@intermediate-node.net> | 2025-05-12 01:51:27 +0200 |
commit | 52a6f8656e8a600a2c59fa2802fb46fafb30de45 (patch) | |
tree | 72511efdccc742709f40e52ca73b708a0c74c1c6 /tokenizer.sig | |
parent | e99a8dc48ede26696be2ba75a8cb0d5122d94598 (diff) |
Object-like macros
Diffstat (limited to 'tokenizer.sig')
-rw-r--r-- | tokenizer.sig | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/tokenizer.sig b/tokenizer.sig index d34f934..7ea6f63 100644 --- a/tokenizer.sig +++ b/tokenizer.sig @@ -13,6 +13,8 @@ signature TOKENIZER = sig Invalid | EOS | NewLine | + MacroStart of string | + MacroEnd | Num of numConst | @@ -122,17 +124,14 @@ signature TOKENIZER = sig CppError | CppPragma - type fullToken = S.pos * token - (* Fatal. both may be thrown by tokenize *) exception FsmTableIsTooSmall - exception TkErrorAug of S.ppos * string + exception TkErrorAug of S.pos * string - val getToken: S.t -> fullToken option * S.t + val getToken: S.t -> token * S.pos * S.t - val tokenize: S.t -> fullToken list val token2str: token -> string val printToken: token -> unit - val debugPrint: fullToken list -> string -> unit + val debugPrint: (token * S.pos) list -> string -> unit end |