Public Member Functions | |
| void | assign_from_another (other:&meshlib::std_shared_ptr_void) |
| auto | get () const -> *mut core::ffi::c_void |
| auto | has_value () const -> bool |
| auto | use_count () const -> core::ffi::c_int |
| void | reset () |
| void | assign_non_owning (ptr:*mut core::ffi::c_void) |
| void | assign_aliasing (ownership:&meshlib::std_shared_ptr_const_void, ptr:*mut core::ffi::c_void) |
Static Public Member Functions | |
| static auto | new () -> meshlib::Owned< meshlib::std_shared_ptr_void > |
| static auto | construct_from_another (other:&meshlib::std_shared_ptr_void) -> meshlib::Owned< meshlib::std_shared_ptr_void > |
| static auto | construct_non_owning (ptr:*mut core::ffi::c_void) -> meshlib::Owned< meshlib::std_shared_ptr_void > |
| static auto | construct_aliasing (ownership:&meshlib::std_shared_ptr_const_void, ptr:*mut core::ffi::c_void) -> meshlib::Owned< meshlib::std_shared_ptr_void > |
| Static Public Member Functions inherited from meshlib::CppClass | |
| static void | destroy (ptr:*mut Self) |
| Static Public Member Functions inherited from meshlib::CppCopy | |
| static auto | copy (ptr:*const Self) -> *mut Self |
Wraps a pointer to a single shared reference-counted heap-allocated void.
Generated from class std::shared_ptr<void>. Heap-allocated instances are held in Owned<std_shared_ptr_void>.
| void meshlib::std_shared_ptr_void::assign_aliasing | ( | ownership:&meshlib::std_shared_ptr_const_void | , |
| ptr:*mut core::ffi::c_void | ) |
The aliasing assignment. Overwrite an existing instance, copying ownership from an existing shared pointer and storing an arbitrary raw pointer. The input pointer can be reinterpreted from any other std::shared_ptr<T> to avoid constructing a new std::shared_ptr<void>.
Calls MR_std_shared_ptr_void_AssignAliasing(). Some types are raw C types, see the C bindings for the details. The reference to the parameter ptr might be preserved in this object.
| void meshlib::std_shared_ptr_void::assign_from_another | ( | other:&meshlib::std_shared_ptr_void | ) |
Assigns the contents from another instance. Both objects remain alive after the call.
Calls MR_std_shared_ptr_void_AssignFromAnother(). The reference to the parameter other might be preserved in this object.
| void meshlib::std_shared_ptr_void::assign_non_owning | ( | ptr:*mut core::ffi::c_void | ) |
Overwrite the existing instance with a non-owning pointer. The previously owned object, if any, has its reference count decremented.
Calls MR_std_shared_ptr_void_AssignNonOwning(). Some types are raw C types, see the C bindings for the details. The reference to the parameter ptr might be preserved in this object.
|
static |
The aliasing constructor. Create a new instance, copying ownership from an existing shared pointer and storing an arbitrary raw pointer. The input pointer can be reinterpreted from any other std::shared_ptr<T> to avoid constructing a new std::shared_ptr<void>.
Calls MR_std_shared_ptr_void_ConstructAliasing(). Some types are raw C types, see the C bindings for the details. The reference to the parameter ptr might be preserved in the constructed object.
|
static |
Constructs a copy of another instance. The source remains alive.
Calls MR_std_shared_ptr_void_ConstructFromAnother(). The reference to the parameter other might be preserved in the constructed object.
|
static |
Create a new instance, storing a non-owning pointer.
Calls MR_std_shared_ptr_void_ConstructNonOwning(). Some types are raw C types, see the C bindings for the details. The reference to the parameter ptr might be preserved in the constructed object.
| auto meshlib::std_shared_ptr_void::get | ( | ) | const -> *mut core::ffi::c_void |
Returns the stored pointer, possibly null.
Calls MR_std_shared_ptr_void_get(). The reference to this object might be preserved as the return value.
| auto meshlib::std_shared_ptr_void::has_value | ( | ) | const -> bool |
Returns true if non-null.
Calls MR_std_shared_ptr_void_has_value().
|
static |
Constructs an empty (default-constructed) instance.
Calls MR_std_shared_ptr_void_DefaultConstruct().
| void meshlib::std_shared_ptr_void::reset | ( | ) |
Resets the pointer to null.
Calls MR_std_shared_ptr_void_reset().
| auto meshlib::std_shared_ptr_void::use_count | ( | ) | const -> core::ffi::c_int |
How many shared pointers share the managed object. Zero if no object is being managed. This being zero usually conincides with MR_std_shared_ptr_void_get() returning null, but is ultimately orthogonal. Note that in multithreaded environments, the only safe way to use this number is comparing it with zero. Positive values might change by the time you get to use them.
Calls MR_std_shared_ptr_void_use_count().