///|
pub const VERSION = "0.2.31"
///|
pub suberror YAMLScriptError {
YAMLScriptError(String)
} derive(@debug.Debug)
///|
#borrow(input)
extern "C" fn load_ys_to_json(input : Bytes) -> Bytes = "ys_load_ys_to_json"
///|
pub fn load(input : String) -> Json raise {
let response = input |> @utf8.encode |> load_ys_to_json |> @utf8.decode
let json = @json.parse(response)
match json {
Object(object) =>
match object.get("error") {
Some(Object(error)) =>
match error.get("cause") {
Some(String(cause)) => raise YAMLScriptError(cause)
_ => raise YAMLScriptError("Unknown YAMLScript error")
}
_ =>
match object.get("data") {
Some(data) => data
_ => raise YAMLScriptError("Unexpected response from libys")
}
}
_ => raise YAMLScriptError("Unexpected response from libys")
}
}