pub enum Offload {
Channel,
Task,
VirtualTime,
Net,
Dom,
}Expand description
The category of op that no single-device AOT backend can lower. Each tier maps a category to its own worded reason (a Tensix core vs. a CUDA kernel phrase it differently) but the SET is shared, so a concurrency/networking op can never be silently accepted by one tier and refused by another.
Variants§
Channel
Shared-memory channel ops — no channel exists on a single compute engine.
Task
Task spawn / await / abort — the engine is SPMD, not a thread pool.
VirtualTime
Sleep / select — needs a cooperative scheduler (virtual time).
Net
Peer networking — host-only IO, off the compute datapath.
Dom
The DOM, the reactive-signal store, WebRTC — a BROWSER surface. A device has no document to build and no page to render into, so a program that touches one is a program aimed at the wrong tier. Without this category those tiers ACCEPTED a page and returned an artifact, and the mistake only showed up as a blank screen on the device.
Trait Implementations§
impl Copy for Offload
impl Eq for Offload
impl StructuralPartialEq for Offload
Auto Trait Implementations§
impl Freeze for Offload
impl RefUnwindSafe for Offload
impl Send for Offload
impl Sync for Offload
impl Unpin for Offload
impl UnsafeUnpin for Offload
impl UnwindSafe for Offload
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§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
§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
key and return true if they are equal.