pub enum ScratchElem {
Show 13 variants
F32,
F64,
F16,
I8,
I16,
I32,
I64,
Str,
Bytes,
Value,
Slots,
Kernels,
State,
}Expand description
Element type of one kernel-owned scratch buffer
(type_system_alignment.md §8.4 layer 3). One entry per
Ref2-colored output port of a slot-compiled node: a typed
vector, a string, a byte string, or a value held by reference.
Variants§
F32
f32 elements.
F64
f64 elements.
F16
f16 elements.
I8
i8 elements.
I16
i16 elements.
I32
i32 elements.
I64
i64 elements.
Str
The UTF-8 bytes of a string.
Bytes
The bytes of a byte string.
Value
One value held by reference (Json, Ext, Handle): the
pair is (&Value, 1).
Slots
A buffer of 64-bit slots: a native cone’s own slot buffer, owned by the state that evaluates it.
Kernels
The kernels a tile render keeps over its projection bodies, owned by the state that renders.
State
State a node defines for itself per evaluating kernel state, a memo of what it last derived from its inputs, created by the node on first use; a clone starts empty.
Trait Implementations§
Source§impl Clone for ScratchElem
impl Clone for ScratchElem
Source§fn clone(&self) -> ScratchElem
fn clone(&self) -> ScratchElem
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ScratchElem
Source§impl Debug for ScratchElem
impl Debug for ScratchElem
impl Eq for ScratchElem
Source§impl PartialEq for ScratchElem
impl PartialEq for ScratchElem
impl StructuralPartialEq for ScratchElem
Auto Trait Implementations§
impl Freeze for ScratchElem
impl RefUnwindSafe for ScratchElem
impl Send for ScratchElem
impl Sync for ScratchElem
impl Unpin for ScratchElem
impl UnsafeUnpin for ScratchElem
impl UnwindSafe for ScratchElem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more