X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_disambiguation%2Ftest_parser.ml;h=4ee8ec6ef1340c757cc2639bd44a9dac10ce9c2c;hb=5325734bc2e4927ed7ec146e35a6f0f2b49f50c1;hp=0f6b2d162c07ab05d4fd1b21b21b8e6a26bcad52;hpb=358d1d55044347255aacb8daf03de0dbb18bc668;p=helm.git diff --git a/helm/ocaml/cic_disambiguation/test_parser.ml b/helm/ocaml/cic_disambiguation/test_parser.ml index 0f6b2d162..4ee8ec6ef 100644 --- a/helm/ocaml/cic_disambiguation/test_parser.ml +++ b/helm/ocaml/cic_disambiguation/test_parser.ml @@ -23,20 +23,49 @@ * http://helm.cs.unibo.it/ *) -try - let ic = - (try - open_in Sys.argv.(1) - with Invalid_argument _ -> stdin) - in - let term = Parser.parse_term (Stream.of_channel ic) in - close_in ic; - print_endline (Pp.pp_term term) -with Stdpp.Exc_located ((p_start, p_end), exn) -> - prerr_endline (Printf.sprintf "Exception at character %d-%d: %s" - p_start p_end (Printexc.to_string exn)) +let pp_tactical = TacticAst2Box.tacticalPp -(* print_endline (Macro.expand "def") *) +let mode = + try + match Sys.argv.(1) with + | "alias" -> prerr_endline "Alias"; `Alias + | "term" -> prerr_endline "Term"; `Term + | "tactic" -> prerr_endline "Tactic"; `Tactic + | "tactical" -> prerr_endline "Tactical"; `Tactical + | _ -> + prerr_endline "What???????"; + exit 1 + with Invalid_argument _ -> prerr_endline "Term"; `Term -(* Printf.printf "'%s'\n" (Macro.expand Sys.argv.(1)) *) +let _ = + let ic = stdin in + try + while true do + try + let line = input_line ic in + let istream = Stream.of_string line in + (match mode with + | `Term -> + let term = CicTextualParser2.parse_term istream in + print_endline (BoxPp.pp_term term) + | `Tactic -> + let tac = CicTextualParser2.parse_tactic istream in + print_endline (TacticAstPp.pp_tactic tac) + | `Tactical -> + let tac = CicTextualParser2.parse_tactical istream in + print_endline (pp_tactical tac) + | `Alias -> + let env = CicTextualParser2.EnvironmentP3.of_string line in + print_endline (CicTextualParser2.EnvironmentP3.to_string env)); + flush stdout + with + | CicTextualParser2.Parse_error msg -> prerr_endline msg +(* + | Stdpp.Exc_located ((p_start, p_end), exn) -> + prerr_endline (Printf.sprintf "Exception at character %d-%d: %s" + p_start p_end (Printexc.to_string exn)) +*) + done + with End_of_file -> + close_in ic