summaryrefslogtreecommitdiff
path: root/ppc.sig
blob: f700634758718fe949e6988040684a1262953999 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
signature PPC = sig

  structure T: TOKENIZER

  type t
  type tkPos

  datatype tkClass =
    Ctk of T.token |
    Cid |
    Cconst |
    Cunop |
    Cbinop |
    Cop

  val clerror: tkPos -> tkClass list -> 'a
  val error: tkPos -> ((bool * ((string -> unit) * (unit -> unit)))
    * ('a * ((string -> unit) * (unit -> unit)) -> 'b) -> 'c) -> 'c

  val create: { fname: string, incDirs: string list, debugMode: bool } -> t
  val getToken: t -> T.token * tkPos * t
  val debugPrint: string -> string list -> unit

  val ? : (int, 'a, 'b, 'c) a1printer
  val Ptk: (T.token, 'a, 'b, 'c) a1printer
  val PtkPos: (tkPos, 'a, 'b, 'c) a1printer
end