pub struct Heap {
pub heap_type: Option<String>,
pub id: Option<u64>,
/* private fields */
}Expand description
A reference to a heap instance.
A given heap instance can have more than one Heap which can be used to
refer to the heap instance. Comparing Heap tables without knowledge of
these Heap aliases is not a reliable way to determine if two Heap tables
refer to the same heap (matching means yes, but not matching means maybe).
Allowing heap aliases makes renaming Heap.type(s) easier.
Fields§
§heap_type: Option<String>The type of the heap, specified using a bind string defined per the schema and mechanism described in comments in the fuchsia.sysmem.heap.bind file.
Examples:
- “fuchsia.sysmem.heap.HEAP_TYPE.SYSTEM_RAM”
- “fuchsia.goldfish.platform.sysmem.heap.HEAP_TYPE.HOST_VISIBLE”
id: Option<u64>The uint64 id of the heap. This is only required to be unique per (type,
boot) tuple. In other words, a given heap id is only meaningful within
the current boot of the machine (not across boots), and only within the
Heap.type.
For Heap.type(s) that refer to a singleton heap, a participant
specifying the singleton heap in
[fuchsia.sysmem2.BufferMemoryConstraints.permitted_heaps] can leave
this field un-set, or set it to zero. Sysmem will always fill out this
field for the heap indicated in
[fuchsia.sysmem2.BufferMemorySettings.heap] (for a singleton heap the
id field will be set to 0 by sysmem).
Trait Implementations§
Source§impl<D> Decode<Heap, D> for Heapwhere
D: ResourceDialect,
impl<D> Decode<Heap, D> for Heapwhere
D: ResourceDialect,
Source§impl TypeMarker for Heap
impl TypeMarker for Heap
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align.Source§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Self::Owned matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned to a single memcpy. Read moreSource§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Self::Owned matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned to a single memcpy.Source§impl ValueTypeMarker for Heap
impl ValueTypeMarker for Heap
Source§type Borrowed<'a> = &'a Heap
type Borrowed<'a> = &'a Heap
Encode<Self>
type cheaply obtainable from &Self::Owned. There are three cases: Read moreSource§fn borrow(
value: &<Heap as TypeMarker>::Owned,
) -> <Heap as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<Heap as TypeMarker>::Owned, ) -> <Heap as ValueTypeMarker>::Borrowed<'_>
&Self::Owned to Self::Borrowed.