pub struct ProjectedValue { /* private fields */ }Implementations§
Source§impl ProjectedValue
impl ProjectedValue
pub fn scalar(name: impl Into<Arc<str>>, value: Value) -> Self
pub fn custom( name: impl Into<Arc<str>>, value: Arc<dyn ProjectedHostDescriptor>, ) -> Self
pub fn custom_with_projection_ref( name: impl Into<Arc<str>>, value: Arc<dyn ProjectedHostDescriptor>, projection_ref: Value, ) -> Self
pub fn name(&self) -> &str
pub fn projection_ref(&self) -> Option<&Value>
Sourcepub fn propagate_field(parent_name: &str, field: &str, inner: Value) -> Value
pub fn propagate_field(parent_name: &str, field: &str, inner: Value) -> Value
Wrap a derived value as a ProjectedValue carrying a path-extended name
(e.g. parent.field). Pass-through if the inner value is already a
Value::Projected so we never double-wrap. Used by field/index access on
projected sources to keep “this came from a projected source” alive
across path expressions; non-path operations (binary ops, builtins,
formatters) auto-strip via their existing materialise-and-evaluate code
paths and so naturally lose the wrapper.
pub fn propagate_index(parent_name: &str, index: &Value, inner: Value) -> Value
pub async fn render(&self) -> String
pub async fn materialize_async(&self) -> Value
pub fn materialize(&self) -> Value
Trait Implementations§
Source§impl Clone for ProjectedValue
impl Clone for ProjectedValue
Source§fn clone(&self) -> ProjectedValue
fn clone(&self) -> ProjectedValue
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 moreSource§impl Debug for ProjectedValue
impl Debug for ProjectedValue
Source§impl PartialEq for ProjectedValue
impl PartialEq for ProjectedValue
Auto Trait Implementations§
impl !RefUnwindSafe for ProjectedValue
impl !UnwindSafe for ProjectedValue
impl Freeze for ProjectedValue
impl Send for ProjectedValue
impl Sync for ProjectedValue
impl Unpin for ProjectedValue
impl UnsafeUnpin for ProjectedValue
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