Commit 229c1479 authored by erwan's avatar erwan
Browse files

New: rdbgui4sasa now handles salut

parent c24817c8
Pipeline #66848 failed with stages
in 2 minutes and 29 seconds
......@@ -23,7 +23,7 @@ depends: [
"dune" { >= "1.11" }
"ocamlgraph"
"lutils"
"rdbg" { >= "1.191" }
"rdbg" { >= "1.193.1" }
]
depopts: [
"lustre-v6"
......
# Time-stamp: <modified the 04/11/2020 (at 16:03) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:38) by Erwan Jahier>
test: ring.cmxs
......@@ -32,9 +32,9 @@ clique10.dot:
rdbg321: grid44_331.dot grid44_331.ml
rdbg -sut "sasa $< -lcd"
rdbg --sasa -sut "sasa $< -lcd"
rdbg331: grid44_331.dot grid44_331.ml
rdbg -sut "sasa $< -lcd"
rdbg --sasa -sut "sasa $< -lcd"
......
# Time-stamp: <modified the 14/04/2020 (at 16:45) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:39) by Erwan Jahier>
test: ring.cmxs
......@@ -18,18 +18,18 @@ gnuplot: ring.rif
###################################################################
# Interactive session with lutin
rdbg: ring.lut ring.ml
rdbg -o ring.rif \
rdbg --sasa -o ring.rif \
-env "$(sasa) ring.dot -custd -rif" \
-sut-nd "lutin ring.lut -n distributed"
# Interactive session with internal deamons
rdbg2: ring.lut ring.ml
rdbg -o ring.rif \
rdbg --sasa -o ring.rif \
-env "$(sasa) ring.dot -dd --dummy-input" \
-sut-nd "lutin ring.lut -n dummy"
rdbg3: ring.ml
rdbg -o ring.rif \
rdbg --sasa -o ring.rif \
-sut "$(sasa) ring.dot -cd -rif"
......
# Time-stamp: <modified the 04/05/2021 (at 11:10) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:40) by Erwan Jahier>
test: ring.cmxs ring.lut rdbg_test
......@@ -26,19 +26,19 @@ lurette: ring.cmxs ring_oracle.lus
-oracle "lv6 -2c-exec ring_oracle.lus -n oracle"
rdbg_test: ring.ml
printf "\nnr\nsd\nq\n" | rdbg -o ring.rif -l 10000 -env "$(sasa) -vl 1 ring.dot -cd"
printf "\nnr\nsd\nq\n" | rdbg --sasa -o ring.rif -l 10000 -env "$(sasa) -vl 1 ring.dot -cd"
rdbg: ring.ml
rdbg -o ring.rif -l 10000 -env "sasa -vl 1 ring.dot -cd"
rdbg --sasa -o ring.rif -l 10000 -env "sasa -vl 1 ring.dot -cd"
rdbgui: ring.ml
rdbgui4sasa -o ring.rif -l 10000 -env "sasa -vl 1 ring.dot -cd"
rdbg4: grid4.ml
rdbg -o ring.rif -l 10000 \
rdbg --sasa -o ring.rif -l 10000 \
-env "sasa grid4.dot -dd"
rdbgl: ring4.cmxs
rdbg -lurette -o lurette-ring.rif \
rdbg -lurette --sasa -o lurette-ring.rif \
-sut "sasa ring.dot -rif -cd "
......
# Time-stamp: <modified the 04/05/2021 (at 11:10) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:41) by Erwan Jahier>
test: test0 test2 lurette0
......@@ -31,19 +31,19 @@ gnuplot2: fig52.rif
gnuplot-rif $<
lurette0: fig51_noinit.cmxs fig51_noinit.lut
lurette -o lurette.rif \
lurette --sasa -o lurette.rif \
-env "sasa fig51_noinit.dot -custd -rif" \
-sut "lutin fig51_noinit.lut -n distributed"
rdbg-lurette1:rdbg-lurette1.rif
rdbg-lurette1.rif: fig51.cmxs fig51.lut fig51_oracle.lus
rdbg -lurette -o rdbg-lurette1.rif \
rdbg -lurette --sasa -o rdbg-lurette1.rif \
-env "$(sasa) fig51.dot -dd -rif" \
-oracle "lv6 fig51_oracle.lus -n oracle"
lurette1:lurette1.rif
lurette1.rif: fig51.cmxs fig51.lut fig51_oracle.lus
lurette -o lurette1.rif \
lurette --sasa -o lurette1.rif \
-env "$(sasa) fig51.dot -dd -rif" \
-oracle "lv6 fig51_oracle.lus -n oracle"
......@@ -52,18 +52,18 @@ lurette: lurette0
gnuplot-rif lurette.rif
rdbg: fig51_noinit.ml fig51_noinit.lut
ledit rdbg -sut "sasa fig51_noinit.dot -dd "
ledit rdbg --sasa -sut "sasa fig51_noinit.dot -dd "
rdbgui: fig51_noinit.ml fig51_noinit.lut
rdbgui4sasa -sut "sasa fig51_noinit.dot -dd "
rdbg2: fig51.ml fig51.lut
rdbg -o lurette.rif \
rdbg --sasa -o lurette.rif \
-env "$(sasa) fig51.dot -custd -rif" \
-sut-nd "lutin fig51.lut -n distributed"
manual: fig51_noinit.cmxs fig51_noinit.lut
lurette -o lurette.rif --sim2chro \
lurette --sasa -o lurette.rif --sim2chro \
-sut "$(sasa) fig51_noinit.dot -custd -rif -ifi" \
-env "lutin fig51_noinit.lut -n manual" &&\
gnuplot-rif lurette.rif
......
# Time-stamp: <modified the 12/03/2020 (at 17:46) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:42) by Erwan Jahier>
test: test0 lurette
......@@ -15,19 +15,19 @@ gnuplot: ring.rif
gnuplot-rif $<
ocd: grid4.ml grid4.cma
rdbg --ocamldebug -sut "sasa grid4.dot" -l 1000
rdbg --sasa --ocamldebug -sut "sasa grid4.dot" -l 1000
rdbg: grid4.ml
rdbg -o rdbg.rif -sut "sasa grid4.dot" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa grid4.dot" -l 1000
rdbg10: grid10.ml
rdbg -o rdbg.rif -sut "sasa grid10.dot" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa grid10.dot" -l 1000
lurette: grid4.cmxs
lurette -o rdbg.rif -sut "sasa -rif grid4.dot" -l 1000
lurette --sasa -o rdbg.rif -sut "sasa -rif grid4.dot" -l 1000
rdbg-ring: ring.ml
rdbg -o rdbg.rif -sut "sasa ring.dot" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa ring.dot" -l 1000
ER-1000.dot:
gg ER -n 1000 -o $@
......
# Time-stamp: <modified the 06/05/2021 (at 14:39) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:45) by Erwan Jahier>
sasa=$(DIR)/bin/sasa -l 100
......@@ -32,13 +32,13 @@ gnuplot: coloring.rif
lurette: ring.cmxs ring_oracle.lus
lurette -o lurette-ring.rif \
lurette --sasa -o lurette-ring.rif \
-sut "sasa ring.dot -rif -lcd " \
-oracle "lv6 ring_oracle.lus -n oracle -exec"
# do not work with ocaml >3.08
rdbg-lurette: ring.cmxs ring_oracle.lus
rdbg -lurette -o lurette-ring.rif \
rdbg -lurette --sasa -o lurette-ring.rif \
-sut "sasa ring.dot -rif -lcd " \
-oracle "lv6 ring_oracle.lus -n oracle -exec"
......@@ -47,7 +47,7 @@ test100:
rdbg: grid4.ml
echo "" > include.ml
ledit rdbg -sut "sasa grid4.dot --locally-central-daemon"
ledit rdbg --sasa -sut "sasa grid4.dot --locally-central-daemon"
rdbgui: grid4.ml
echo "" > include.ml
rdbgui4sasa -sut "sasa grid4.dot --locally-central-daemon"
......@@ -58,7 +58,7 @@ rdbgui-demo: grid10.ml
rdbg-luciole: grid4.ml
echo "" > include.ml
rdbg --luciole -sut "sasa -rif grid4.dot --custom-daemon"
rdbg --sasa --luciole -sut "sasa -rif grid4.dot --custom-daemon"
rdbgui-custd: grid4.ml
echo "" > include.ml
......@@ -67,22 +67,22 @@ rdbgui-custd: grid4.ml
rdbg3: ring.ml
echo "" > include.ml
ledit rdbg -sut "sasa ring.dot -wd"
ledit rdbg --sasa -sut "sasa ring.dot -wd"
rdbg1: ring.ml ring_oracle.lus
echo "" > include.ml
ledit rdbg -o rdbg-ring.rif \
ledit rdbg --sasa -o rdbg-ring.rif \
-sut "sasa --replay ring.dot -rif -lcd " \
-oracle "lv6 ring_oracle.lus -n oracle -exec"
rdbg2: ring.cmxs ring.lut
echo "" > include.ml
ledit rdbg -o ring.rif \
ledit rdbg --sasa -o ring.rif \
-env "$(sasa) --replay ring.dot -custd -rif" \
-sut-nd "lutin ring.lut -n distributed"
rdbg4: ring.ml
ledit rdbg --missing-vars-last -o ring.rif -env "sasa ring.dot -custd "
ledit rdbg --sasa -o ring.rif -env "sasa ring.dot -custd "
clean: genclean
......
# Time-stamp: <modified the 04/11/2020 (at 11:12) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:46) by Erwan Jahier>
test: test0 lurette0
......@@ -17,7 +17,7 @@ gnuplot: g.rif
lurette0: g.cmxs g.lut
lurette -o lurette.rif \
lurette --sasa -o lurette.rif \
-env "$(sasa) g.dot -custd -rif" \
-sut "lutin g.lut -n distributed"
......@@ -27,12 +27,12 @@ lurette: lurette0
rdbg: g.ml
rdbg -o lurette.rif -env "sasa g.dot -rif"
rdbg --sasa -o lurette.rif -env "sasa g.dot -rif"
rdbgui: g.ml
rdbgui4sasa -o lurette.rif -env "sasa g.dot -rif"
rdbg2: g.ml g.lut
rdbg -o lurette.rif \
rdbg --sasa -o lurette.rif \
-env "$(sasa) g.dot -rif" \
-sut-nd "lutin g.lut -n dummy"
......
# Time-stamp: <modified the 04/05/2021 (at 11:11) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:46) by Erwan Jahier>
test: test0 lurette0 rdbg_test
......@@ -21,7 +21,7 @@ gnuplot: g.rif
gnuplot-rif $<
lurette0: g.cmxs g.lut
lurette -o lurette.rif \
lurette --sasa -o lurette.rif \
-env "$(sasa) g.dot -custd -rif" \
-sut "lutin g.lut -n distributed"
......@@ -31,11 +31,11 @@ lurette: lurette0
rdbg: g.lut g.ml
rdbg -o lurette.rif \
rdbg --sasa -o lurette.rif \
-env "$(sasa) g.dot -rif"
rdbg2: g.lut g.ml
rdbg -o lurette.rif \
rdbg --sasa -o lurette.rif \
-env "$(sasa) g.dot -rif" \
-sut-nd "lutin g.lut -n dummy"
......
# Time-stamp: <modified the 04/05/2021 (at 11:11) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:46) by Erwan Jahier>
test: ring.cmxs lurette1 rdbg_test
......@@ -23,7 +23,7 @@ gnuplot: ring.rif
rdbg: ring.ml ring.lut
ledit rdbg -o ring.rif -sut "sasa ring.dot"
ledit rdbg --sasa -o ring.rif -sut "sasa ring.dot"
rdbgui: ring.ml ring.lut
rdbgui4sasa -o ring.rif -sut "sasa ring.dot"
......@@ -34,15 +34,15 @@ rdbgui-sd: ring.ml ring.lut
rdbgui4sasa -o ring.rif -sut "sasa ring.dot -sd"
rdbg2: ring.ml ring.lut
ledit rdbg -o ring.rif \
ledit rdbg --sasa -o ring.rif \
-env "$(sasa) ring.dot -custd -rif" \
-sut-nd "lutin ring.lut -n distributed"\
rdbg_test: ring.ml
printf "\nnr\nsd\nq\n" | rdbg -o ring.rif -l 10000 -sut "$(sasa) -vl 1 ring.dot -dd"
printf "\nnr\nsd\nq\n" | rdbg --sasa -o ring.rif -l 10000 -sut "$(sasa) -vl 1 ring.dot -dd"
lurette1: ring.lut ring_oracle.lus
lurette \
lurette --sasa \
-env "$(sasa) ring.dot -custd " \
-sut "lutin ring.lut -n distributed" \
-oracle "lv6 ring_oracle.lus -n oracle"
......
# Time-stamp: <modified the 15/10/2020 (at 15:36) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:49) by Erwan Jahier>
test: fig52_kcl.cmxs
......@@ -17,10 +17,10 @@ gnuplot: fig52_kcl.rif
gnuplot-rif $<
rdbg: fig52_kcl.ml
rdbg -o fig52_kcl.rif -env "sasa fig52_kcl.dot -gcd"
rdbg --sasa -o fig52_kcl.rif -env "sasa fig52_kcl.dot -gcd"
rdbgcd: fig52_kcl.ml
rdbg -o fig52_kcl.rif -env "sasa fig52_kcl.dot -cd"
rdbg --sasa -o fig52_kcl.rif -env "sasa fig52_kcl.dot -cd"
dtree50: dtree50.cmxs
sasa -cd dtree50.dot
......
# Time-stamp: <modified the 10/11/2020 (at 11:59) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:47) by Erwan Jahier>
......@@ -6,7 +6,7 @@ test: grid4.dot grid4.cmxs
sasa -l 10 grid4.dot
rdbg: grid4.ml
rdbg -sut "sasa grid4.dot"
rdbg --sasa -sut "sasa grid4.dot"
clean: genclean
rm -f ring.ml grid4.dot rdbg-cmds.ml
......
# Time-stamp: <modified the 12/03/2020 (at 17:47) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:47) by Erwan Jahier>
test: test0 lurette
......@@ -18,16 +18,16 @@ gnuplot: ring.rif
gnuplot-rif $<
ocd: grid4.ml grid4.cma
rdbg --ocamldebug -sut "sasa grid4.dot -cd -seed 42" -l 1000
rdbg --sasa --ocamldebug -sut "sasa grid4.dot -cd -seed 42" -l 1000
rdbg: grid4.ml
rdbg -o rdbg.rif -sut "sasa grid4.dot -cd" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa grid4.dot -cd" -l 1000
lurette: grid4.cmxs
lurette -o rdbg.rif -sut "sasa grid4.dot -cd" -l 1000
lurette --sasa -o rdbg.rif -sut "sasa grid4.dot -cd" -l 1000
rdbg-ring: ring.ml
rdbg -o rdbg.rif -sut "sasa ring.dot -cd" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa ring.dot -cd" -l 1000
clean: genclean
......
# Time-stamp: <modified the 12/03/2020 (at 17:46) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:47) by Erwan Jahier>
test: test0 lurette lurette-alt
......@@ -15,23 +15,23 @@ gnuplot: ring.rif
gnuplot-rif $<
ocd: grid4.ml grid4.cma
rdbg --ocamldebug -sut "sasa grid4.dot" -l 1000
rdbg --sasa --ocamldebug -sut "sasa grid4.dot" -l 1000
rdbg: grid4.ml
rdbg -o rdbg.rif -sut "sasa grid4.dot" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa grid4.dot" -l 1000
lurette: grid4.cmxs grid4_oracle.lus
lurette -o rdbg.rif -sut "sasa grid4.dot -rif" \
lurette --sasa -o rdbg.rif -sut "sasa grid4.dot -rif" \
-oracle "lv6 grid4_oracle.lus -n oracle -exec" -l 1000
lurette-alt: grid4.cmxs grid4_oracle.lus
rdbg -lurette -o rdbg.rif -sut "sasa grid4.dot -rif" \
rdbg -lurette --sasa -o rdbg.rif -sut "sasa grid4.dot -rif" \
-oracle "lv6 grid4_oracle.lus -n oracle -exec" -l 1000
rdbg-ring: ring.ml
rdbg -o rdbg.rif -sut "sasa ring.dot" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa ring.dot" -l 1000
clean: genclean
......
# Time-stamp: <modified the 12/03/2020 (at 17:46) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:51) by Erwan Jahier>
test: test0 lurette lurette-alt
......@@ -15,26 +15,26 @@ gnuplot: ring.rif
gnuplot-rif $<
ocd: grid4.ml grid4.cma
rdbg --ocamldebug -sut "sasa grid4.dot" -l 1000
rdbg --sasa --ocamldebug -sut "sasa grid4.dot" -l 1000
rdbg: grid4.ml
rdbg -o rdbg.rif -sut "sasa grid4.dot" -l 100
rdbg --sasa -o rdbg.rif -sut "sasa grid4.dot" -l 100
rdbg10: grid10.ml
rdbg -o rdbg.rif -sut "sasa grid10.dot" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa grid10.dot" -l 1000
lurette: grid4.cmxs grid4_oracle.lus
lurette -o rdbg.rif -sut "sasa grid4.dot -rif" \
lurette --sasa -o rdbg.rif -sut "sasa grid4.dot -rif" \
-oracle "lv6 grid4_oracle.lus -n oracle -exec" -l 1000
lurette-alt: grid4.cmxs grid4_oracle.lus
rdbg -lurette -o rdbg.rif -sut "sasa grid4.dot -rif" \
rdbg -lurette --sasa -o rdbg.rif -sut "sasa grid4.dot -rif" \
-oracle "lv6 grid4_oracle.lus -n oracle -exec" -l 1000
rdbg-ring: ring.ml
rdbg -o rdbg.rif -sut "sasa ring.dot" -l 1000
rdbg --sasa -o rdbg.rif -sut "sasa ring.dot" -l 1000
clean: genclean
......
# Time-stamp: <modified the 04/05/2021 (at 11:11) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:48) by Erwan Jahier>
test: test1 test2
......@@ -25,7 +25,7 @@ gnuplot: te.rif
gnuplot-rif $<
rdbg: te.ml
rdbg -o te.rif -env "$(sasa) te.dot -gcd"
rdbg --sasa -o te.rif -env "$(sasa) te.dot -gcd"
clean: genclean
rm -f te.ml
......
# Time-stamp: <modified the 04/11/2020 (at 11:08) by Erwan Jahier>
# Time-stamp: <modified the 11/05/2021 (at 16:49) by Erwan Jahier>
test: test1 test2 lurette0 lurette1 rdbg_test test3
......@@ -32,33 +32,33 @@ luciole: ring.cmxs
lurette0: ring_oracle.lus
lurette -o lurette.rif \
lurette --sasa -o lurette.rif \
-sut "$(sasa) ring.dot -sd -rif" \
-oracle "lv6 ring_oracle.lus -n oracle"
# Idem with custom daemon
lurette1: ring.lut ring_oracle.lus
lurette -o lurette.rif \
lurette --sasa -o lurette.rif \
-env "$(sasa) ring.dot -custd -rif" \
-sut "lutin ring.lut -n synchronous" \
-oracle "lv6 ring_oracle.lus -n oracle"
#
rdbg_daemon: ring.cmxs
rdbg --missing-vars-last -sut "sasa ring.dot -custd -rif"
rdbg --sasa -sut "sasa ring.dot -custd -rif"
lurette: lurette0 s g
rdbg: ring.ml
rdbg -o unison.rif -sut "$(sasa) ring.dot -sd -rif"
rdbg --sasa -o unison.rif -sut "$(sasa) ring.dot -sd -rif"
rdbgui: ring.ml
rdbgui4sasa -o unison.rif -sut "$(sasa) ring.dot -sd -rif"
rdbg2: ring.ml
rdbg -o unison.rif -sut "sasa ring.dot -custd -rif"
rdbg --sasa -o unison.rif -sut "sasa ring.dot -custd -rif"
rdbg_test: ring.ml
printf "\nn\ns\nsi 4\nn\nni 3\nq\n" | rdbg -o unison.rif \
printf "\nn\ns\nsi 4\nn\nni 3\nq\n" | rdbg --sasa -o unison.rif \
-sut "$(sasa) ring.dot -sd -rif" \
-include ../Makefile.inc
......
......@@ -24,55 +24,65 @@ let (is_parent: string -> string -> int -> RdbgEvent.t -> bool) =
| Some (I j) -> j > -1 && i = j
| _ -> false
let (get_processes : RdbgEvent.t -> process list) =
fun e ->
(* if e.kind <> Ltop then (
print_string "dot should be called from Ltop event\n";
failwith "exit dot"
);*)
let l = List.map (fun (x,v) -> Str.split (Str.regexp "_") x, v) e.data in
let rec sortv (enab, other) (x,v) =
match x with
| "Enab"::pid::tail -> (pid, String.concat "_" tail,v)::enab, other
| pid::tail -> enab, (pid,(String.concat "_" tail),v)::other
| [] -> assert false
in
let enab, other = List.fold_left sortv ([],[]) l in
let rec (build_pidl: process list -> (string * string * Data.v) list ->
(string * string * Data.v) list -> process list) =
fun pidl enab other ->
match enab with
| [] -> pidl
| (pid, _, _)::_ ->
let enab_pid_list, enab =
List.partition (fun (pid0,_,_) -> pid=pid0) enab
in
let other_pid, other =
List.partition (fun (pid0,_,_) -> pid=pid0) other
in
let acti_pid, vars_pid =
List.partition
(fun (_,n,_) -> List.exists (fun (_,n2,_) -> n2=n) enab_pid_list)
other_pid
in
let get_actions (_, n, enabv) =
match List.find_opt (fun (_,n0, _) -> n=n0) acti_pid with
| Some (_,_,activ) ->
(n, enabv = Data.B true, activ = B true)
| None ->
(n, enabv = Data.B true, false)
in
let pid = {
name = pid;
actions = List.map get_actions enab_pid_list;
vars = List.map (fun (_,n,v) -> n,v) vars_pid;
}
in
build_pidl (pid::pidl) enab other
in
let pidl = build_pidl [] enab other in
List.rev pidl
(* if e.kind <> Ltop then (
print_string "dot should be called from Ltop event\n";
failwith "exit dot"
);*)
let l = List.map (fun (x,v) -> Str.split (Str.regexp "_") x, v) e.data in
let rec sortv (enab, other) (x,v) =
match args.salut_mode,x with
| false,"Enab"::pid::tail -> (pid, String.concat "_" tail,v)::enab, other
| false,pid::tail -> enab, (pid,(String.concat "_" tail),v)::other
| _,[] -> assert false
| true, ([_] | [_; _]) -> enab, other
| true, "Enab"::p::id::tail -> (p^id, String.concat "_" tail,v)::enab, other
| true, p::id::id2::tail ->
try
let _i = int_of_string id in
enab, (p^id,(String.concat "_" (id2::tail)),v)::other
with _ ->
try
let _i = int_of_string id2 in
enab, (p^id2,(String.concat "_" (id::tail)),v)::other
with _ -> assert false
in
let enab, other = List.fold_left sortv ([],[]) l in
let rec (build_pidl: process list -> (string * string * Data.v) list ->
(string * string * Data.v) list -> process list) =
fun pidl enab other ->
match enab with
| [] -> pidl
| (pid, _, _)::_ ->
let enab_pid_list, enab =
List.partition (fun (pid0,_,_) -> pid=pid0) enab
in
let other_pid, other =
List.partition (fun (pid0,_,_) -> pid=pid0) other
in
let acti_pid, vars_pid =
List.partition
(fun (_,n,_) -> List.exists (fun (_,n2,_) -> n2=n) enab_pid_list)
other_pid
in
let get_actions (_, n, enabv) =
match List.find_opt (fun (_,n0, _) -> n=n0) acti_pid with
| Some (_,_,activ) ->
(n, enabv = Data.B true, activ = B true)
| None ->
(n, enabv = Data.B true, false)
in