Newer
Older
Erwan Jahier
committed
(** Time-stamp: <modified the 19/12/2007 (at 09:50) by Erwan Jahier> *)
Erwan Jahier
committed
(** A lazy compiler is an internal structure that contains tables
storing compiled entities (types, const, node). At the beginning
(on creation), it only contains empty tables. But then, one when
ask for a type, a const, or a node, the tables are filled in.
*)
Erwan Jahier
committed
(* Create en lazy compiler. *)
Erwan Jahier
committed
val create : SyntaxTab.t -> t
Erwan Jahier
committed
(** Compiles one type.
Erwan Jahier
committed
nb: modifies its first argument!
*)
val do_type : t -> Ident.long -> Lxm.t -> CompiledData.type_eff
(** Compiles one provided type *)
val do_prov_type : t -> Ident.long -> Lxm.t -> CompiledData.type_eff
(* val do_prov_const : t -> Ident.long -> Lxm.t -> CompiledData.type_eff *)
(** Compiles one node *)
val do_node : t -> CompiledData.node_key -> CompiledData.node_eff
(* Test/debug des types et constantes statiques associées *)
val test_types : t -> unit