diff --git a/src_ocaml/grewpy.ml b/src_ocaml/grewpy.ml index 9a469c250d5e1e158285bea66344d95f891bc163..061ad6aa22cf5ef635199b568e141f49f734c6de 100644 --- a/src_ocaml/grewpy.ml +++ b/src_ocaml/grewpy.ml @@ -166,20 +166,20 @@ let run_command request = begin try let corpus_index = json |> member "corpus_index" |> to_int in - let string_pattern = json |> member "pattern" |> to_string in - let pattern = Pattern.parse ~config string_pattern in + let pattern = Grs.request_of_json ~config (json |> member "request") in let corpus = Global.corpus_get corpus_index in - let matches = Array.fold_left + let matches = + Array.fold_left (fun acc (id,graph) -> - let matching_list = Matching.search_pattern_in_graph ~config pattern graph in - (List.map + let matching_list = Matching.search_pattern_in_graph ~config pattern graph in + (List.map (fun m -> `Assoc [ - ("sent_id", `String id); - ("matching", Matching.to_json pattern graph m) - ] + ("sent_id", `String id); + ("matching", Matching.to_json pattern graph m) + ] ) matching_list - ) @ acc + ) @ acc ) [] corpus in Yojson.Basic.to_string (`Assoc [