pub enum RawVcUnpacked {
TaskOutput(TaskId),
TaskCell(TaskId, CellId),
LocalOutput(ExecutionId, LocalTaskId, TaskPersistence),
}Expand description
The unpacked form of RawVc, produced by RawVc::unpack.
Variants§
TaskOutput(TaskId)
The synchronous return value of a task (after argument resolution). This is the
representation used by OperationVc.
TaskCell(TaskId, CellId)
A pointer to a specific Vc::cell or .cell() call within a task. This
is the representation used by ResolvedVc.
CellId contains the ValueTypeId, which can be useful for efficient downcasting.
LocalOutput(ExecutionId, LocalTaskId, TaskPersistence)
The synchronous return value of a local task. This is created when a function is called
with unresolved arguments or more explicitly with
#[turbo_tasks::function(local)].
Local outputs are only valid within the context of their parent “non-local” task. Turbo
Task’s APIs are designed to prevent escapes of local Vcs, but ExecutionId is used
for a fallback runtime assertion.
Trait Implementations§
Source§impl Clone for RawVcUnpacked
impl Clone for RawVcUnpacked
Source§fn clone(&self) -> RawVcUnpacked
fn clone(&self) -> RawVcUnpacked
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RawVcUnpacked
impl Debug for RawVcUnpacked
Source§impl Hash for RawVcUnpacked
impl Hash for RawVcUnpacked
Source§impl PartialEq for RawVcUnpacked
impl PartialEq for RawVcUnpacked
Source§fn eq(&self, other: &RawVcUnpacked) -> bool
fn eq(&self, other: &RawVcUnpacked) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for RawVcUnpacked
impl Eq for RawVcUnpacked
impl StructuralPartialEq for RawVcUnpacked
Auto Trait Implementations§
impl Freeze for RawVcUnpacked
impl RefUnwindSafe for RawVcUnpacked
impl Send for RawVcUnpacked
impl Sync for RawVcUnpacked
impl Unpin for RawVcUnpacked
impl UnsafeUnpin for RawVcUnpacked
impl UnwindSafe for RawVcUnpacked
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> DynPartialEq for T
impl<T> DynPartialEq for T
fn dyn_partial_eq(&self, other: &(dyn Any + 'static)) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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> ⓘ
Converts
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> ⓘ
Converts
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§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.