Newer
Older
(* Time-stamp: <modified the 12/02/2013 (at 18:06) by Erwan Jahier> *)
(** Translate Ast to lic.
Basically, it
- calls [EvalConst.f] wherever it is necessary, i.e., for items
that are required to be static, such as arrays sizes, or array
indexes.
- recursively calls itself for translating sub-terms
- checks the arguments and the parameters are compatible (i.e., that they unify)
*)
val of_type : IdSolver.t -> AstCore.type_exp -> Lic.type_
val of_clock : IdSolver.t -> AstCore.var_info -> Lic.id_clock
(**
A [node_exp] is a name plus a list of static arguments.
The goal of [node] is to
- compute the effective type of static arguments
- check they are compatible with the node signature
check the type of the static arguments (
*)
val of_node : IdSolver.t -> AstCore.node_exp Lxm.srcflagged ->
val of_eq : IdSolver.t -> AstCore.eq_info Lxm.srcflagged ->
val of_assertion : IdSolver.t -> AstCore.val_exp Lxm.srcflagged ->