pub struct PreScheduleItem {
pub kernel: Arc<UOp>,
pub ast: Arc<UOp>,
pub sources: Vec<Arc<UOp>>,
pub dependencies: Vec<u64>,
pub bound_ranges: Vec<BoundRangeRef>,
}Expand description
Cached pre-schedule item.
Contains callable identity/AST and argument UOps, but no concrete buffers.
Fields§
§kernel: Arc<UOp>Callable wrapper UOp (CALL) used for dependency identity.
ast: Arc<UOp>Callable body AST used for codegen.
sources: Vec<Arc<UOp>>Callable argument UOps in canonical order.
dependencies: Vec<u64>Callable dependencies by callable UOp ID.
bound_ranges: Vec<BoundRangeRef>Schedule-level Range bindings (BIND(DEFINE_VAR, RANGE)) from CALL args.
Trait Implementations§
Source§impl Clone for PreScheduleItem
impl Clone for PreScheduleItem
Source§fn clone(&self) -> PreScheduleItem
fn clone(&self) -> PreScheduleItem
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 moreAuto Trait Implementations§
impl Freeze for PreScheduleItem
impl !RefUnwindSafe for PreScheduleItem
impl Send for PreScheduleItem
impl Sync for PreScheduleItem
impl Unpin for PreScheduleItem
impl UnsafeUnpin for PreScheduleItem
impl !UnwindSafe for PreScheduleItem
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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