Commit 7a6ac267 authored by erwan's avatar erwan

Update: monadisation of Lutin, part 3.

Rationale: make rdbg time traveling work.
parent c2eb6c77
...@@ -175,7 +175,7 @@ let make ...@@ -175,7 +175,7 @@ let make
) in ) in
fprintf os "nodes {\n" ; fprintf os "nodes {\n" ;
Hashtbl.iter print_state (AutoGen.states auto) ; Util.StringMap.iter print_state (AutoGen.states auto) ;
fprintf os "}\n" ; fprintf os "}\n" ;
fprintf os "start_node { %s }\n" (AutoGen.init_control auto) ; fprintf os "start_node { %s }\n" (AutoGen.init_control auto) ;
......
This diff is collapsed.
...@@ -70,8 +70,8 @@ val init_control : t -> string ...@@ -70,8 +70,8 @@ val init_control : t -> string
val transitions : t -> trans list val transitions : t -> trans list
(* Explore le sous-graphe du state *) (* Explore le sous-graphe du state *)
val config2gtree : t -> config -> gtree val config2gtree : t -> config -> gtree * t
val config2trans : t -> config -> trans list val config2trans : t -> config -> trans list * t
(* MUST BE INITIALIZED WITH A FUNCTION : (* MUST BE INITIALIZED WITH A FUNCTION :
CoAlgExp.t -> Exp.t CoAlgExp.t -> Exp.t
...@@ -86,7 +86,7 @@ val get_state_def : t -> string -> CoTraceExp.t ...@@ -86,7 +86,7 @@ val get_state_def : t -> string -> CoTraceExp.t
val get_state_info : t -> string -> state_info val get_state_info : t -> string -> state_info
(* Table des états connus *) (* Table des états connus *)
val states : t -> (string, state_info) Hashtbl.t val states : t -> state_info Util.StringMap.t
val dump : t -> unit val dump : t -> unit
...@@ -494,11 +494,12 @@ let lut_get_wtl (zelut:t) (input:Var.env_in) (st:Prog.state) (ctrlst:Prog.ctrl_s ...@@ -494,11 +494,12 @@ let lut_get_wtl (zelut:t) (input:Var.env_in) (st:Prog.state) (ctrlst:Prog.ctrl_s
Verbose.exe ~level:2 (fun () -> Verbose.put "# -> state2gtree\n"); Verbose.exe ~level:2 (fun () -> Verbose.put "# -> state2gtree\n");
Utils.time_C "state2gtree"; Utils.time_C "state2gtree";
let gt = AutoGen.config2gtree zelut.auto zecfg in let gt, auto = AutoGen.config2gtree zelut.auto zecfg in
let zelut = { zelut with auto = auto } in
Utils.time_R "state2gtree"; Utils.time_R "state2gtree";
Verbose.exe ~level:2 ( Verbose.exe ~level:2 (
fun () -> Verbose.put "# <- state2gtree, done: %d nodes\n" (AutoGen.gtree_size gt) fun () -> Verbose.put "# <- state2gtree, done: %d nodes\n"
(AutoGen.gtree_size gt)
); );
(* traduction gtree -> Prog.wt *) (* traduction gtree -> Prog.wt *)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment