Module LicTabSource

Sourcetype t

This module (used to be called lazyCompiler) define an data structure made of tables storing lic 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.

Sourceval create : AstTab.t -> t

Create a lazy compiler.

Sourceexception Recursion_error of Lv6Id.long * string list
Sourceval compile_node : t -> Lv6Id.idref -> t

Compiles one node (and update internal tables)

Sourceval compile_all : t -> t

compile all items (and update internal tables)

Sourceval to_lic_prg : t -> LicPrg.t

Just a simple change of data structure (from imperative tables to functional maps)