mod session; mod messages; mod pipe; use session::IsabelleSession; use structopt::StructOpt; #[derive(StructOpt)] #[structopt(name = "isabelle-proto-POC", about="proof of concept for communicating with an Isabelle server")] struct Options { theory : String, #[structopt(name="directory", default_value=Box::leak(Box::new(std::env::current_dir().unwrap().into_os_string().into_string().unwrap())))] directory : String } fn main() { let options = Options::from_args(); let mut session = IsabelleSession::start_with_client(); let started = session.start_session("HOL".to_owned(),vec![]).unwrap(); println!("{:?}", started); let theoryresults = session.load_theory( options.theory, Some(options.directory) ); println!("loaded theory: {:?}", theoryresults); }