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
.
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
.
fn pin(&self) -> Arc<dyn TurboTasksApi>
fn invalidate(&self, _task: TaskId)
fn invalidate_with_reason( &self, _task: TaskId, _reason: StaticOrArc<dyn InvalidationReason>, )
fn invalidate_serialization(&self, _task: TaskId)
Source§fn notify_scheduled_tasks(&self)
fn notify_scheduled_tasks(&self)
Eagerly notifies all tasks that were scheduled for notifications via
schedule_notify_tasks_set()
fn try_read_task_output( &self, id: TaskId, _consistency: ReadConsistency, ) -> Result<Result<RawVc, EventListener>>
Source§fn try_read_task_output_untracked(
&self,
task: TaskId,
consistency: ReadConsistency,
) -> Result<Result<RawVc, EventListener>>
fn try_read_task_output_untracked( &self, task: TaskId, consistency: ReadConsistency, ) -> Result<Result<RawVc, EventListener>>
INVALIDATION: Be careful with this, it will not track dependencies, so
using it could break cache invalidation.
fn try_read_task_cell( &self, task: TaskId, index: CellId, _options: ReadCellOptions, ) -> Result<Result<TypedCellContent, EventListener>>
Source§fn try_read_task_cell_untracked(
&self,
task: TaskId,
index: CellId,
_options: ReadCellOptions,
) -> Result<Result<TypedCellContent, EventListener>>
fn try_read_task_cell_untracked( &self, task: TaskId, index: CellId, _options: ReadCellOptions, ) -> Result<Result<TypedCellContent, EventListener>>
INVALIDATION: Be careful with this, it will not track dependencies, so
using it could break cache invalidation.
Source§fn try_read_own_task_cell_untracked(
&self,
current_task: TaskId,
index: CellId,
options: ReadCellOptions,
) -> Result<TypedCellContent>
fn try_read_own_task_cell_untracked( &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, content: CellContent, )
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)
fn set_own_task_aggregation_number( &self, _task: TaskId, _aggregation_number: u32, )
Source§fn detached_for_testing(
&self,
_f: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>
fn detached_for_testing( &self, _f: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>, ) -> Pin<Box<dyn Future<Output = Result<()>> + 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>>
Source§impl TurboTasksCallApi for VcStorage
impl TurboTasksCallApi for VcStorage
Source§fn dynamic_call(
&self,
func: FunctionId,
this: Option<RawVc>,
arg: Box<dyn MagicAny>,
_persistence: TaskPersistence,
) -> RawVc
fn dynamic_call( &self, func: FunctionId, 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: FunctionId,
_this: Option<RawVc>,
_arg: Box<dyn MagicAny>,
_persistence: TaskPersistence,
) -> RawVc
fn native_call( &self, _func: FunctionId, _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: TraitTypeId,
_trait_fn_name: Cow<'static, str>,
_this: RawVc,
_arg: Box<dyn MagicAny>,
_persistence: TaskPersistence,
) -> RawVc
fn trait_call( &self, _trait_type: TraitTypeId, _trait_fn_name: Cow<'static, str>, _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_once( &self, _future: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>, ) -> TaskId
fn run_once_with_reason( &self, _reason: StaticOrArc<dyn InvalidationReason>, _future: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>, ) -> TaskId
fn run_once_process( &self, _future: Pin<Box<dyn Future<Output = Result<()>> + Send + 'static>>, ) -> TaskId
Auto Trait Implementations§
impl !Freeze for VcStorage
impl RefUnwindSafe for VcStorage
impl Send for VcStorage
impl Sync for VcStorage
impl !Unpin for VcStorage
impl UnwindSafe for VcStorage
Blanket Implementations§
§impl<T> Any for Twhere
T: Any,
impl<T> Any for Twhere
T: Any,
fn get_type_id(&self) -> TypeId
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