| Some (status, stm) when test stm -> (* "interesting" statement *)
let loc_begin, loc_end = HExtlib.loc_of_floc (get_loc stm) in
let raw_statement =
| Some (status, stm) when test stm -> (* "interesting" statement *)
let loc_begin, loc_end = HExtlib.loc_of_floc (get_loc stm) in
let raw_statement =
callback raw_statement;
exaust (raw_statement :: acc) status
| Some (status, _stm) -> exaust acc status in
callback raw_statement;
exaust (raw_statement :: acc) status
| Some (status, _stm) -> exaust acc status in
let ma_extension_test fname = Filename.check_suffix fname ".ma"
let rgrep_statement ?status ?callback ?(fname_test = ma_extension_test)
let ma_extension_test fname = Filename.check_suffix fname ".ma"
let rgrep_statement ?status ?callback ?(fname_test = ma_extension_test)
| None -> None
| Some f -> Some (fun s -> f (fname, s)) in
List.map (fun raw -> fname, raw)
| None -> None
| Some f -> Some (fun s -> f (fname, s)) in
List.map (fun raw -> fname, raw)