Source

ocaml-logicm / tests_list.ml

module LogicM = LogicM_list

type bindr = { bind : 'a 'b .
  ('a -> 'b LogicM.m) -> 'a LogicM.m -> 'b LogicM.m
}

let run_test ~time ~fn testfunc =
  Printf.printf "%s/list:%!" fn;
  if fn = "interleave"
  then Printf.printf "  skipped.\n%!"
  else
    (
      Printf.printf "\n%!";
      time (testfunc ~bindr:{bind = LogicM.bind}) ();
      print_newline ()
    )