Zero-overhead, typestate-tracked, reference-counted handle.
More...
|
|
auto | abort () &&noexcept -> robject< T, lifecycle_state::dying > |
| | embryo → dying (creation aborted before activation).
|
|
auto | activate () &&noexcept -> robject< T, lifecycle_state::active > |
| | sealed → active.
|
|
auto | activate () &&noexcept -> robject< T, lifecycle_state::active > |
| | embryo → active.
|
|
auto | begin_destroy () &&noexcept -> robject< T, lifecycle_state::dying > |
| | active | suspended → dying.
|
|
auto | generation () const noexcept -> u32 |
| | Get the kobject generation (shorthand for ptr_->ko.generation).
|
|
auto | id () const noexcept -> u32 |
| | Get the kobject ID (shorthand for ptr_->ko.id).
|
|
| operator bool () const noexcept |
|
auto | operator* () const noexcept -> T & |
|
auto | operator-> () const noexcept -> T * |
|
auto | operator= (const robject &other) noexcept -> robject & |
|
auto | operator= (robject &&other) noexcept -> robject & |
|
auto | raw () const noexcept -> T * |
|
auto | release () noexcept -> T * |
| | Release ownership WITHOUT decrementing the refcount.
|
|
auto | resume () &&noexcept -> robject< T, lifecycle_state::active > |
| | suspended → active.
|
|
| robject () noexcept=default |
| | Default — null handle.
|
|
| robject (const robject &other) noexcept |
|
| robject (robject &&other) noexcept |
|
| robject (T *p) noexcept |
| | Acquire a reference to an existing object.
|
|
auto | seal () &&noexcept -> robject< T, lifecycle_state::sealed > |
| | embryo → sealed.
|
|
auto | suspend () &&noexcept -> robject< T, lifecycle_state::suspended > |
| | active → suspended.
|
|
| ~robject () noexcept |
| | Release the reference.
|
|
|
static auto | acquire (T *p) noexcept -> robject< T, State > |
| | Construct from a raw pointer, incrementing the refcount.
|
|
static auto | from_raw_noref (T *p) noexcept -> robject< T, State > |
| | Construct from a raw pointer WITHOUT incrementing the.
|
template<typename T,
lifecycle_state State>
class zxfoundation::scoms::kobject::robject< T, State >
Zero-overhead, typestate-tracked, reference-counted handle.
- Template Parameters
-
| T | Concrete kernel object type |
| State | Compile-time lifecycle state this handle represents. |
The documentation for this class was generated from the following file:
- zxfoundation/scoms/kobject.zcomponent/ref.cxxm