const wasmInstance = new WebAssembly.Instance(wasmModule, imports);
// module.exports = wasmInstance.exports;
const wasm = wasmInstance.exports;
const wasmInstance = new WebAssembly.Instance(wasmModule, imports);
// module.exports = wasmInstance.exports;
const wasm = wasmInstance.exports;
constructor(ptr?: number, arg?: bindings.{struct_name}{constructor_arguments}) {{
if (Number.isFinite(ptr)) {{
super(ptr);
constructor(ptr?: number, arg?: bindings.{struct_name}{constructor_arguments}) {{
if (Number.isFinite(ptr)) {{
super(ptr);
static new_impl(arg: {struct_name.replace("LDK", "")}Interface{impl_constructor_arguments}): {struct_name.replace("LDK", "")} {{
const impl_holder: {struct_name}Holder = new {struct_name}Holder();
let structImplementation = <bindings.{struct_name}>{{
static new_impl(arg: {struct_name.replace("LDK", "")}Interface{impl_constructor_arguments}): {struct_name.replace("LDK", "")} {{
const impl_holder: {struct_name}Holder = new {struct_name}Holder();
let structImplementation = <bindings.{struct_name}>{{
{out_interface_implementation_overrides}
}};
impl_holder.held = new {struct_name.replace("LDK", "")} (null, structImplementation{trait_constructor_arguments});
}}
{out_interface_implementation_overrides}
}};
impl_holder.held = new {struct_name.replace("LDK", "")} (null, structImplementation{trait_constructor_arguments});
}}
class {struct_name}Holder {{
held: {struct_name.replace("LDK", "")};
}}
class {struct_name}Holder {{
held: {struct_name.replace("LDK", "")};
}}
export function {struct_name}_get_obj_from_jcalls(val: number): {struct_name} {{
throw new Error('unimplemented'); // TODO: bind to WASM
}}
export function {struct_name}_get_obj_from_jcalls(val: number): {struct_name} {{
throw new Error('unimplemented'); // TODO: bind to WASM
}}
return (out_typescript_bindings, out_typescript_human, out_c)
def trait_struct_inc_refcnt(self, ty_info):
return (out_typescript_bindings, out_typescript_human, out_c)
def trait_struct_inc_refcnt(self, ty_info):
return (out_java, out_java_enum, out_c)
def map_opaque_struct(self, struct_name):
return (out_java, out_java_enum, out_c)
def map_opaque_struct(self, struct_name):
export default class {struct_name.replace("LDK","")} extends CommonBase {implementations}{{
constructor(_dummy: object, ptr: number) {{
super(ptr);
}}
export default class {struct_name.replace("LDK","")} extends CommonBase {implementations}{{
constructor(_dummy: object, ptr: number) {{
super(ptr);
}}