ZXFoundation™ 26h2
Loading...
Searching...
No Matches
zxfoundation::scoms::kobject::robject< T, State > Class Template Referenceexport

Zero-overhead, typestate-tracked, reference-counted handle. More...

Public Member Functions

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 Public Member Functions

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.

Detailed Description

template<typename T, lifecycle_state State>
class zxfoundation::scoms::kobject::robject< T, State >

Zero-overhead, typestate-tracked, reference-counted handle.

Template Parameters
TConcrete kernel object type
StateCompile-time lifecycle state this handle represents.

The documentation for this class was generated from the following file:
  • zxfoundation/scoms/kobject.zcomponent/ref.cxxm