mirror of
https://gitlab.com/scemama/QCaml.git
synced 2024-09-16 17:35:44 +02:00
33 lines
889 B
OCaml
33 lines
889 B
OCaml
|
(* [[file:../install_printers.org::*Intall printers][Intall printers:2]] *)
|
||
|
let printers =
|
||
|
[
|
||
|
"Common.Angular_momentum.pp" ;
|
||
|
"Common.Bitstring.pp" ;
|
||
|
"Common.Charge.pp" ;
|
||
|
"Common.Coordinate.pp" ;
|
||
|
"Common.Powers.pp" ;
|
||
|
"Common.Range.pp" ;
|
||
|
"Common.Spin.pp" ;
|
||
|
"Common.Zkey.pp" ;
|
||
|
"Particles.Electrons.pp" ;
|
||
|
"Particles.Element.pp" ;
|
||
|
|
||
|
]
|
||
|
|
||
|
let eval_exn str =
|
||
|
let lexbuf = Lexing.from_string str in
|
||
|
let phrase = !Toploop.parse_toplevel_phrase lexbuf in
|
||
|
Toploop.execute_phrase false Format.err_formatter phrase
|
||
|
|
||
|
|
||
|
let rec install_printers = function
|
||
|
| [] -> true
|
||
|
| printer :: printers ->
|
||
|
let cmd = Printf.sprintf "#install_printer %s;;" printer in
|
||
|
eval_exn cmd && install_printers printers
|
||
|
|
||
|
let () =
|
||
|
if not (install_printers printers) then
|
||
|
Format.eprintf "Problem installing QCaml-printers@."
|
||
|
(* Intall printers:2 ends here *)
|