pub struct Cargo<'a> {
pub input: &'a Value,
pub known: &'a [(NodeId, Value)],
pub keys: &'a [(NodeId, Keys)],
pub placement: &'a Placement,
pub memory: &'a Memory,
}Expand description
What a plan needs beyond itself in order to run elsewhere.
Fields§
§input: &'a ValueThe graph’s input, for the steps over there that read from nobody.
known: &'a [(NodeId, Value)]What was already produced here that the plan over there reads and does not produce. Only that: the wire is the expensive part.
keys: &'a [(NodeId, Keys)]What each of those is called. Without them the slice over there can name nothing it produces, and a cache that stops at the process boundary is a cache nobody can rely on.
placement: &'a PlacementWhere each node runs. It travels because a placement is data and the catalog is not.
memory: &'a MemoryWhat is remembered about each node, for the same reason and by the same rule: it is data. Without it the other side does not know what is frozen, what is worth keeping, or what any of it is called.
Auto Trait Implementations§
impl<'a> Freeze for Cargo<'a>
impl<'a> !RefUnwindSafe for Cargo<'a>
impl<'a> Send for Cargo<'a>
impl<'a> Sync for Cargo<'a>
impl<'a> Unpin for Cargo<'a>
impl<'a> UnsafeUnpin for Cargo<'a>
impl<'a> !UnwindSafe for Cargo<'a>
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