Begin translation module
[tiger.ml.git] / compiler / src / lib / tiger / tiger_translate.mli
1 module Level : sig
2 type t
3
4 val init : t
5 (** "outermost" in Applel's code *)
6
7 val next : t -> name:Tiger_temp.Label.t -> formals:bool list -> t
8 (** "newLevel" in Appel's code *)
9 end
10
11 type gen_stm =
12 (Tiger_temp.Label.t * Tiger_temp.Label.t) -> Tiger_tree.stm
13
14 type exp
15
16 type access
17
18 val alloc_local : level:Level.t -> escapes:bool -> access
19
20 val formals : level:Level.t -> access list
21
22 val unEx : exp -> Tiger_tree.exp
23 val unNx : exp -> Tiger_tree.stm
24 val unCx : exp -> gen_stm
25
26 val dummy__FIXME : exp (* FIXME: Remove dummy when real is ready *)
This page took 0.056753 seconds and 4 git commands to generate.