pub struct VcStorage { /* private fields */ }Implementations§
Trait Implementations§
Source§impl TurboTasksApi for VcStorage
impl TurboTasksApi for VcStorage
Source§fn subscribe_to_compilation_events(
&self,
_event_types: Option<Vec<String>>,
) -> Receiver<Arc<dyn CompilationEvent>>
fn subscribe_to_compilation_events( &self, _event_types: Option<Vec<String>>, ) -> Receiver<Arc<dyn CompilationEvent>>
Should not be called on the testing VcStorage. These methods are only implemented for
structs with access to a MessageQueue like TurboTasks.
fn invalidate(&self, _task: TaskId)
fn invalidate_with_reason( &self, _task: TaskId, _reason: StaticOrArc<dyn InvalidationReason>, )
fn invalidate_serialization(&self, _task: TaskId)
fn try_read_task_output( &self, id: TaskId, _options: ReadOutputOptions, ) -> Result<Result<RawVc, EventListener>>
fn try_read_task_cell( &self, task: TaskId, index: CellId, _options: ReadCellOptions, ) -> Result<Result<TypedCellContent, EventListener>>
Source§fn try_read_own_task_cell(
&self,
current_task: TaskId,
index: CellId,
options: ReadCellOptions,
) -> Result<TypedCellContent>
fn try_read_own_task_cell( &self, current_task: TaskId, index: CellId, options: ReadCellOptions, ) -> Result<TypedCellContent>
INVALIDATION: Be careful with this, it will not track dependencies, so
using it could break cache invalidation.
Source§fn try_read_local_output(
&self,
_execution_id: ExecutionId,
_local_task_id: LocalTaskId,
) -> Result<Result<RawVc, EventListener>>
fn try_read_local_output( &self, _execution_id: ExecutionId, _local_task_id: LocalTaskId, ) -> Result<Result<RawVc, EventListener>>
Reads a [
RawVc::LocalOutput]. If the task has completed, returns the [RawVc] the local
task points to. Read morefn emit_collectible(&self, _trait_type: TraitTypeId, _collectible: RawVc)
fn unemit_collectible( &self, _trait_type: TraitTypeId, _collectible: RawVc, _count: u32, )
fn unemit_collectibles( &self, _trait_type: TraitTypeId, _collectibles: &TaskCollectiblesMap, )
fn read_task_collectibles( &self, _task: TaskId, _trait_id: TraitTypeId, ) -> TaskCollectiblesMap
fn read_own_task_cell( &self, task: TaskId, index: CellId, _options: ReadCellOptions, ) -> Result<TypedCellContent>
fn update_own_task_cell( &self, task: TaskId, index: CellId, _is_serializable_cell_content: bool, content: CellContent, _updated_key_hashes: Option<SmallVec<[u64; 2]>>, _verification_mode: VerificationMode, )
fn connect_task(&self, _task: TaskId)
fn mark_own_task_as_finished(&self, _task: TaskId)
fn mark_own_task_as_session_dependent(&self, _task: TaskId)
Source§fn spawn_detached_for_testing(
&self,
_f: Pin<Box<dyn Future<Output = ()> + Send + 'static>>,
)
fn spawn_detached_for_testing( &self, _f: Pin<Box<dyn Future<Output = ()> + Send + 'static>>, )
Wraps the given future in the current task. Read more
fn task_statistics(&self) -> &TaskStatisticsApi
fn stop_and_wait(&self) -> Pin<Box<dyn Future<Output = ()> + Send + 'static>>
fn is_tracking_dependencies(&self) -> bool
Source§impl TurboTasksCallApi for VcStorage
impl TurboTasksCallApi for VcStorage
Source§fn send_compilation_event(&self, _event: Arc<dyn CompilationEvent>)
fn send_compilation_event(&self, _event: Arc<dyn CompilationEvent>)
Should not be called on the testing VcStorage. These methods are only implemented for
structs with access to a MessageQueue like TurboTasks.
Source§fn dynamic_call(
&self,
func: &'static NativeFunction,
this: Option<RawVc>,
arg: Box<dyn MagicAny>,
_persistence: TaskPersistence,
) -> RawVc
fn dynamic_call( &self, func: &'static NativeFunction, this: Option<RawVc>, arg: Box<dyn MagicAny>, _persistence: TaskPersistence, ) -> RawVc
Calls a native function with arguments. Resolves arguments when needed
with a wrapper task.
Source§fn native_call(
&self,
_func: &'static NativeFunction,
_this: Option<RawVc>,
_arg: Box<dyn MagicAny>,
_persistence: TaskPersistence,
) -> RawVc
fn native_call( &self, _func: &'static NativeFunction, _this: Option<RawVc>, _arg: Box<dyn MagicAny>, _persistence: TaskPersistence, ) -> RawVc
Call a native function with arguments.
All inputs must be resolved.
Source§fn trait_call(
&self,
_trait_type: &'static TraitMethod,
_this: RawVc,
_arg: Box<dyn MagicAny>,
_persistence: TaskPersistence,
) -> RawVc
fn trait_call( &self, _trait_type: &'static TraitMethod, _this: RawVc, _arg: Box<dyn MagicAny>, _persistence: TaskPersistence, ) -> RawVc
Calls a trait method with arguments. First input is the
self object.
Uses a wrapper task to resolvefn run( &self, _future: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>, ) -> Pin<Box<dyn Future<Output = Result<(), TurboTasksExecutionError>> + Send>>
fn run_once( &self, _future: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'static>>
fn run_once_with_reason( &self, _reason: StaticOrArc<dyn InvalidationReason>, _future: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'static>>
fn start_once_process( &self, _future: Pin<Box<dyn Future<Output = ()> + Send + 'static>>, )
Source§fn get_task_name(&self, task: TaskId) -> String
fn get_task_name(&self, task: TaskId) -> String
Returns a human-readable name for the given task.
Auto Trait Implementations§
impl !Freeze for VcStorage
impl RefUnwindSafe for VcStorage
impl Send for VcStorage
impl Sync for VcStorage
impl !Unpin for VcStorage
impl UnsafeUnpin for VcStorage
impl UnwindSafe for VcStorage
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
§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.