#[unsafe(no_mangle)]pub extern "C" fn pxs_addobject(
module_ptr: *mut pxs_Module,
name: *const c_char,
object_constructor: pxs_Func,
opaque: pxs_Opaque,
)Expand description
Add a object to a Module.
This essentially makes it so that when constructing this Module, this object is instanced. This works by adding a public factory function with the type name. But the type name is mangled (_module_typename).
In Lua:
-- Let's say we have a object "Person"
local p = Person("Jordan", 23)
p:set_name("Jordan Castro")
local name = p:get_name()
-- Although you could also do
local p = Person("Jordan", 23)
p.set_name(p, "Jordan") -- You get the ideaIn Python:
p = Person("Jordan", 23)
# use '.' instead of ':'
# etcIn JS the same as Python and Lua:
let p = Person("Jordan", 23);
// Same as Python
// etc