ZXFoundation™ 26h2
Loading...
Searching...
No Matches
zxfoundation::memory::pmm::folio< State > Class Template Referenceexport

Move-only, typestate-tracked physical memory allocation. More...

Inheritance diagram for zxfoundation::memory::pmm::folio< State >:
[legend]
Collaboration diagram for zxfoundation::memory::pmm::folio< State >:
[legend]

Public Member Functions

 folio (u64 base, u32 ord, purpose p, zone z) noexcept
auto make_active () &&noexcept -> folio< lifecycle_state::active >
 Advance embryo → active, consuming this folio.
 operator bool () const noexcept
auto page_count () const noexcept -> u64
auto pfn () const noexcept -> u64
auto size_bytes () const noexcept -> u64
auto virt () const noexcept -> void *
Public Member Functions inherited from zxfoundation::base::typestate< State >
auto operator= (const typestate &)=delete
auto operator= (typestate &&) noexcept -> typestate &=default
 typestate (const typestate &)=delete
 typestate (typestate &&) noexcept=default

Data Fields

zone mem_zone {zone::normal}
u32 order {0}
u64 phys_base {0}
purpose use {purpose::generic}

Additional Inherited Members

Static Public Attributes inherited from zxfoundation::base::typestate< State >
static constexpr lifecycle_state state = State

Detailed Description

template<lifecycle_state State = lifecycle_state::embryo>
class zxfoundation::memory::pmm::folio< State >

Move-only, typestate-tracked physical memory allocation.

Member Function Documentation

◆ make_active()

template<lifecycle_state State = lifecycle_state::embryo>
auto zxfoundation::memory::pmm::folio< State >::make_active ( ) &&->folio< lifecycle_state::active >
inlinenodiscardexportnoexcept

Advance embryo → active, consuming this folio.

Note
Only available on embryo folios (requires clause).

The documentation for this class was generated from the following file: