// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type USDLoader
///|
#module("@mizchi/three-mbt/asset-formats")
pub extern "js" fn USDLoader::USDLoader() -> USDLoader = "uSDLoader"
///|
pub fn USDLoader::as_loader(self : USDLoader) -> Loader = "%identity"
///|
extern "js" fn USDLoader::ffi_load(
self : USDLoader,
url : String,
) -> @js_async.Promise[Group] =
#| (self, url) => Promise.resolve().then(() => self.loadAsync(url))
///|
pub async fn USDLoader::load(
self : USDLoader,
url : String,
) -> Group raise LoadError {
try {
let value = self.ffi_load(url).wait()
value
} catch {
error => raise LoadError((error : Error).to_string())
}
}
///|
extern "js" fn USDLoader::ffi_parse(
self : USDLoader,
data : Bytes,
path : String,
) -> @js_async.Promise[Group] =
#| (self, data, path) => Promise.resolve().then(() => new Promise((resolve,reject)=>self.parse(data.buffer.slice(data.byteOffset,data.byteOffset+data.byteLength),path,resolve,reject)))
///|
pub async fn USDLoader::parse(
self : USDLoader,
data : Bytes,
path : String,
) -> Group raise LoadError {
try {
let value = self.ffi_parse(data, path).wait()
value
} catch {
error => raise LoadError((error : Error).to_string())
}
}
///|
extern "js" fn USDLoader::ffi_parse_ascii(
self : USDLoader,
text : String,
path : String,
) -> @js_async.Promise[Group] =
#| (self, text, path) => Promise.resolve().then(() => new Promise((resolve,reject)=>self.parse(text,path,resolve,reject)))
///|
pub async fn USDLoader::parse_ascii(
self : USDLoader,
text : String,
path : String,
) -> Group raise LoadError {
try {
let value = self.ffi_parse_ascii(text, path).wait()
value
} catch {
error => raise LoadError((error : Error).to_string())
}
}