use organic::parser::parse_with_settings; use organic::settings::GlobalSettings; use organic::wasm::ParseResult; use organic::wasm::ToWasm; use organic::wasm::ToWasmContext; use wasm_bindgen::prelude::wasm_bindgen; #[wasm_bindgen] pub fn parse_org(org_contents: &str) -> wasm_bindgen::JsValue { let rust_parsed = match parse_with_settings(org_contents, &GlobalSettings::default()) { Ok(document) => document, Err(err) => { return serde_wasm_bindgen::to_value(&ParseResult::Error(format!("{:?}", err))) .unwrap(); } }; let to_wasm_context = ToWasmContext::new(org_contents); let wasm_document = match rust_parsed.to_wasm(to_wasm_context) { Ok(document) => document, Err(err) => { return serde_wasm_bindgen::to_value(&ParseResult::Error(format!("{:?}", err))) .unwrap(); } }; serde_wasm_bindgen::to_value(&ParseResult::Success(wasm_document)).unwrap() } fn main() -> Result<(), Box> { Ok(()) }