pub enum PartialValue {
Value(Value),
Residual(Expr),
}
Expand description
Intermediate results of partial evaluation
Variants§
Value(Value)
Fully evaluated values
Residual(Expr)
Residual expressions containing unknowns INVARIANT: A residual must have an unknown contained within
Implementations§
Source§impl PartialValue
impl PartialValue
Trait Implementations§
Source§impl AsRef<PartialValue> for PartialValueSerializedAsExpr
impl AsRef<PartialValue> for PartialValueSerializedAsExpr
Source§fn as_ref(&self) -> &PartialValue
fn as_ref(&self) -> &PartialValue
Converts this type into a shared reference of the (usually inferred) input type.
Source§impl Clone for PartialValue
impl Clone for PartialValue
Source§fn clone(&self) -> PartialValue
fn clone(&self) -> PartialValue
Returns a copy of the value. Read more
1.0.0 · 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 PartialValue
impl Debug for PartialValue
Source§impl Display for PartialValue
impl Display for PartialValue
Source§impl From<Context> for PartialValue
impl From<Context> for PartialValue
Source§fn from(ctx: Context) -> PartialValue
fn from(ctx: Context) -> PartialValue
Converts to this type from the input type.
Source§impl From<Expr> for PartialValue
impl From<Expr> for PartialValue
Source§impl From<PartialValue> for Expr
impl From<PartialValue> for Expr
Source§fn from(pv: PartialValue) -> Self
fn from(pv: PartialValue) -> Self
Converts to this type from the input type.
Source§impl From<PartialValue> for PartialValueSerializedAsExpr
impl From<PartialValue> for PartialValueSerializedAsExpr
Source§fn from(value: PartialValue) -> PartialValueSerializedAsExpr
fn from(value: PartialValue) -> PartialValueSerializedAsExpr
Converts to this type from the input type.
Source§impl From<PartialValueSerializedAsExpr> for PartialValue
impl From<PartialValueSerializedAsExpr> for PartialValue
Source§fn from(value: PartialValueSerializedAsExpr) -> PartialValue
fn from(value: PartialValueSerializedAsExpr) -> PartialValue
Converts to this type from the input type.
Source§impl PartialEq for PartialValue
impl PartialEq for PartialValue
Source§impl TryFrom<PartialValue> for RestrictedExpr
impl TryFrom<PartialValue> for RestrictedExpr
Source§type Error = PartialValueToRestrictedExprError
type Error = PartialValueToRestrictedExprError
The type returned in the event of a conversion error.
Source§fn try_from(
pvalue: PartialValue,
) -> Result<RestrictedExpr, PartialValueToRestrictedExprError>
fn try_from( pvalue: PartialValue, ) -> Result<RestrictedExpr, PartialValueToRestrictedExprError>
Performs the conversion.
Source§impl TryFrom<PartialValue> for Value
impl TryFrom<PartialValue> for Value
Source§type Error = PartialValueToValueError
type Error = PartialValueToValueError
The type returned in the event of a conversion error.
impl Eq for PartialValue
impl StructuralPartialEq for PartialValue
Auto Trait Implementations§
impl Freeze for PartialValue
impl RefUnwindSafe for PartialValue
impl Send for PartialValue
impl Sync for PartialValue
impl Unpin for PartialValue
impl UnwindSafe for PartialValue
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)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