summaryrefslogtreecommitdiff
path: root/tokenizer.sig
diff options
context:
space:
mode:
authorVladimir Azarov <avm@intermediate-node.net>2025-04-04 20:53:56 +0200
committerVladimir Azarov <avm@intermediate-node.net>2025-04-04 20:53:56 +0200
commit9d724f17e813fa344d485329d33b5f5ecf8197a3 (patch)
tree5061e604ea88a379db975b13c1d20688007cacc8 /tokenizer.sig
parent7b29b31648fd737e7bbc007f480b799add91bc6b (diff)
Functorization
Diffstat (limited to 'tokenizer.sig')
-rw-r--r--tokenizer.sig10
1 files changed, 6 insertions, 4 deletions
diff --git a/tokenizer.sig b/tokenizer.sig
index 245cfbe..c9626e0 100644
--- a/tokenizer.sig
+++ b/tokenizer.sig
@@ -1,4 +1,6 @@
signature TOKENIZER = sig
+ structure S: STREAM
+
datatype intType = ItDec | ItOct | ItHex
datatype intSfx = IsNone | IsU | IsL | IsUL | IsLL | IsULL
datatype floatSfx = FsNone | FsF | FsL
@@ -116,15 +118,15 @@ signature TOKENIZER = sig
CppError |
CppPragma
- type fullToken = Stream.pos * token
+ type fullToken = S.pos * token
(* Fatal. both may be thrown by tokenize *)
exception FsmTableIsTooSmall
- exception TkErrorAug of Stream.ppos * string
+ exception TkErrorAug of S.ppos * string
- val getToken: Stream.t -> fullToken option * Stream.t
+ val getToken: S.t -> fullToken option * S.t
- val tokenize: Stream.t -> fullToken list
+ val tokenize: S.t -> fullToken list
val token2str: token -> string
val printToken: token -> unit