// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type PLYLoader
///|
#module("@mizchi/three-mbt/modeling-io")
pub extern "js" fn PLYLoader::PLYLoader() -> PLYLoader = "pLYLoader"
///|
pub fn PLYLoader::as_loader(self : PLYLoader) -> Loader = "%identity"
///|
extern "js" fn PLYLoader::ffi_load(
self : PLYLoader,
url : String,
) -> @js_async.Promise[BufferGeometry] =
#| (self, url) => Promise.resolve().then(() => self.loadAsync(url))
///|
pub async fn PLYLoader::load(
self : PLYLoader,
url : String,
) -> BufferGeometry raise LoadError {
try {
let value = self.ffi_load(url).wait()
value
} catch {
error => raise LoadError((error : Error).to_string())
}
}
///|
extern "js" fn PLYLoader::ffi_parse(
self : PLYLoader,
data : Bytes,
) -> JsResult[BufferGeometry] =
#| (self, data) => { try { return { ok: true, value: (() => self.parse(data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength)))() }; } catch (error) { return { ok: false, error: String(error) }; } }
///|
pub fn PLYLoader::parse(
self : PLYLoader,
data : Bytes,
) -> BufferGeometry raise LoadError {
match self.ffi_parse(data).into_result() {
Ok(value) => value
Err(message) => raise LoadError(message)
}
}
///|
extern "js" fn PLYLoader::ffi_parse_ascii(
self : PLYLoader,
text : String,
) -> JsResult[BufferGeometry] =
#| (self, text) => { try { return { ok: true, value: (() => self.parse(text))() }; } catch (error) { return { ok: false, error: String(error) }; } }
///|
pub fn PLYLoader::parse_ascii(
self : PLYLoader,
text : String,
) -> BufferGeometry raise LoadError {
match self.ffi_parse_ascii(text).into_result() {
Ok(value) => value
Err(message) => raise LoadError(message)
}
}
///|
pub extern "js" fn PLYLoader::set_property_name_mapping(
self : PLYLoader,
mapping : PLYPropertyNames,
) -> Unit =
#| (self, mapping) => self.setPropertyNameMapping(mapping)
///|
pub extern "js" fn PLYLoader::set_custom_property_name_mapping(
self : PLYLoader,
mapping : PLYCustomProperties,
) -> Unit =
#| (self, mapping) => self.setCustomPropertyNameMapping(mapping)