Skip to content
Snippets Groups Projects
Commit cb7d354c authored by Erwan Jahier's avatar Erwan Jahier
Browse files

Add support for clock checking structure.

parent 5dd64311
No related branches found
No related tags found
No related merge requests found
(** Time-stamp: <modified the 26/06/2008 (at 16:00) by Erwan Jahier> *) (** Time-stamp: <modified the 26/06/2008 (at 16:24) by Erwan Jahier> *)
open Predef open Predef
...@@ -352,9 +352,16 @@ and (eval_by_pos_clock : id_solver -> by_pos_op_eff -> Lxm.t -> val_exp_eff list ...@@ -352,9 +352,16 @@ and (eval_by_pos_clock : id_solver -> by_pos_op_eff -> Lxm.t -> val_exp_eff list
and (eval_by_name_clock : id_solver -> by_name_op_eff -> Lxm.t -> and (eval_by_name_clock : id_solver -> by_name_op_eff -> Lxm.t ->
(Ident.t Lxm.srcflagged * val_exp_eff) list -> subst -> (Ident.t Lxm.srcflagged * val_exp_eff) list -> subst ->
clock_info list * subst) = clock_info list * subst) =
fun id_solver namop lxm namargs -> fun id_solver namop lxm namargs s ->
match namop with match namop with
| STRUCT_anonymous_eff -> assert false (* cf EvalClock.f *) | STRUCT_anonymous_eff -> assert false (* cf EvalType.f *)
| STRUCT_eff opid -> assert false | STRUCT_eff opid ->
(* [id_solver.id2clock opid lxm] *) let args = List.map (fun (id,ve) -> ve) namargs in
(* XXX The 3 following lines duplicates the code of TUPLE_eff and co *)
let clk_args, s = f_list id_solver s args in
let flat_clk_args = List.flatten clk_args in (* => mono-clock! *)
let clk,s = UnifyClock.list lxm flat_clk_args s in
let clk_list = List.map (apply_subst s) (List.hd clk_args) in
clk_list, s
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment