signature CPP = sig structure T: TOKENIZER type t type tkPos type tkExpectedValue exception TkExpected of tkExpectedValue datatype tkExp = Tk of T.token | Id | NumConst | StrLiteral | UnOp | BinOp | Op val create: string -> t val getToken: t -> T.token * t val getLastPos: t -> tkPos val prepAndRaise: t -> tkPos -> tkExp list -> 'a val tkExpectedPrint: tkExpectedValue -> unit val debugPrint: string -> unit end