pub struct ParentView { /* private fields */ }Expand description
Everything a builder reads of the scope it builds under: the names the parent declares, the modifier on each output, the ledger the child’s compile is charged to, and the cells in scope there — each a live handle rather than a copy.
That is the whole parent surface finalize touches. The view holds
the answers rather than a kernel or a PolydatProgram, which a
compiled kernel does not keep, so a parent of any engine can give
them.
Implementations§
Source§impl ParentView
impl ParentView
Sourcepub fn of_kernel(parent: &dyn Kernel) -> Self
pub fn of_kernel(parent: &dyn Kernel) -> Self
The view a kernel of any engine presents to a subcontext built under it.
Sourcepub fn of(parent: &PolydatKernel) -> Self
pub fn of(parent: &PolydatKernel) -> Self
Self::of_kernel for the interpreter’s kernel type, which
most callers hold.
Sourcepub fn output_names(&self) -> &[String]
pub fn output_names(&self) -> &[String]
The names the parent declares as outputs.
Sourcepub fn input_names(&self) -> &[String]
pub fn input_names(&self) -> &[String]
The names the parent declares as inputs, coordinates included.
Sourcepub fn output_modifier(&self, name: &str) -> BindingModifier
pub fn output_modifier(&self, name: &str) -> BindingModifier
The modifier on a named output; NONE for a name the parent
does not declare.
Sourcepub fn ledger(&self) -> &Arc<CompileLedger> ⓘ
pub fn ledger(&self) -> &Arc<CompileLedger> ⓘ
The ledger the child’s compile is charged to: a subscope is a program of the parent’s tree.
Sourcepub fn resources(&self) -> &ResourceScope
pub fn resources(&self) -> &ResourceScope
The resource scope the child’s nodes reach: a subscope is a program of the parent’s tree and sees the parent’s accessor.
The shared cells visible at the parent, its own and every ancestor’s that reached it.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for ParentView
impl !UnwindSafe for ParentView
impl Freeze for ParentView
impl Send for ParentView
impl Sync for ParentView
impl Unpin for ParentView
impl UnsafeUnpin for ParentView
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
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> ⓘ
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