This commit is contained in:
Suzanne Dupéron 2019-10-23 10:41:36 -04:00
parent 79967e9067
commit 10362426aa

View File

@ -925,12 +925,13 @@ let select_and_propagate : ('old_input, 'selector_output) selector -> BlaBla.t p
fun selector propagator -> fun selector propagator ->
fun old_type_constraint dbs -> fun old_type_constraint dbs ->
(* TODO: thread some state to know which selector outputs were already seen *) (* TODO: thread some state to know which selector outputs were already seen *)
let already_selected = (??) in let already_selected = failwith "(?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? TODO)" in
match selector old_type_constraint dbs with match selector old_type_constraint dbs with
WasSelected selected_outputs -> WasSelected selected_outputs ->
(* TODO: fold instead. *) (* TODO: fold instead. *)
let selected_outputs = List.filter (fun elt -> AlreadySelected.mem elt already_selected) selected_outputs in let selected_outputs = List.filter (fun elt -> AlreadySelected.mem elt already_selected) selected_outputs in
let blahblah = List.fold_left (fun acc elt -> AlreadySelected.add elt acc) already_selected selected_outputs in let blahblah = List.fold_left (fun acc elt -> AlreadySelected.add elt acc) already_selected selected_outputs in
let _______________________________________________________________________________________________________________________________________TODO = blahblah in
(* Call the propagation rule *) (* Call the propagation rule *)
let new_contraints_and_assignments = List.map (fun s -> propagator s dbs) selected_outputs in let new_contraints_and_assignments = List.map (fun s -> propagator s dbs) selected_outputs in
let (new_constraints , new_assignments) = List.split new_contraints_and_assignments in let (new_constraints , new_assignments) = List.split new_contraints_and_assignments in