organic/src/bin_wasm.rs

18 lines
587 B
Rust
Raw Normal View History

2023-12-24 00:39:57 -05:00
#![no_main]
2023-12-24 01:35:21 -05:00
use organic::parser::parse_with_settings;
use organic::settings::GlobalSettings;
use wasm::ParseResult;
2023-12-24 00:59:41 -05:00
use wasm_bindgen::prelude::wasm_bindgen;
2023-12-24 00:39:57 -05:00
2023-12-24 01:35:21 -05:00
mod wasm;
2023-12-24 00:59:41 -05:00
#[wasm_bindgen]
2023-12-24 01:35:21 -05:00
pub fn parse_org(org_contents: &str) -> wasm_bindgen::JsValue {
let global_settings = GlobalSettings::default();
let rust_parsed = parse_with_settings(org_contents, &global_settings)
2023-12-24 13:18:06 -05:00
.map(|document| ParseResult::Success((org_contents, document).into()))
2023-12-24 01:35:21 -05:00
.unwrap_or_else(|err| ParseResult::Error(format!("{:?}", err)));
serde_wasm_bindgen::to_value(&rust_parsed).unwrap()
2023-12-24 00:39:57 -05:00
}