Struct ResolvedRealization
pub struct ResolvedRealization { /* private fields */ }Description
Validated plan plus the two-layer revision provenance used to obtain it.
Implementations§
§impl ResolvedRealization
impl ResolvedRealization
pub fn portable_graph(
&self,
claim: SingleFieldOperatorClaim,
) -> Result<PortableRealizationGraph, Diagnostic>
pub fn portable_graph( &self, claim: SingleFieldOperatorClaim, ) -> Result<PortableRealizationGraph, Diagnostic>
Normalize an accepted compatibility plan for one exact semantic Field.
The claim is deliberately supplied by an equation-aware lowerer because the old plan contains neither Semantic identities nor operator facts. This projection validates its structure and seals its operator property against the exact candidate set retained by compatibility resolution. The execution finalizer still owns comparison with the accepted equation identity and coefficients.
§Errors
Returns EQ0807 if the resolved value cannot form one connected,
portable linear-solve DAG.
§impl ResolvedRealization
impl ResolvedRealization
pub const fn model(&self) -> OntologyId<Model>
pub const fn model(&self) -> OntologyId<Model>
Semantic model identity.
pub const fn semantic_revision(&self) -> SemanticRevision
pub const fn semantic_revision(&self) -> SemanticRevision
Semantic revision.
pub const fn source(&self) -> ResolutionSource
pub const fn source(&self) -> ResolutionSource
Selection origin.
pub const fn requirements(&self) -> RealizationRequirements
pub const fn requirements(&self) -> RealizationRequirements
Model/lowering facts against which the plan was admitted.
pub const fn plan(&self) -> &RealizationPlan
pub const fn plan(&self) -> &RealizationPlan
Validated realization plan.
pub fn require_admitted_operator_properties(
&self,
operator_properties: LinearOperatorProperties,
) -> Result<(), Diagnostic>
pub fn require_admitted_operator_properties( &self, operator_properties: LinearOperatorProperties, ) -> Result<(), Diagnostic>
Require one equation-aware operator property admitted by this legacy resolution.
Compatibility RealizationPlan does not contain an operator
assertion. Resolution therefore retains the properties of every exact
matching capability tuple. A numerical finalizer that does not project
through the portable graph must call this before materializing its
equation-specific operator.
§Errors
Returns EQ0807 when the property was not present in the retained exact
capability candidates.
Trait Implementations§
§impl Clone for ResolvedRealization
impl Clone for ResolvedRealization
§impl Debug for ResolvedRealization
impl Debug for ResolvedRealization
§impl PartialEq for ResolvedRealization
impl PartialEq for ResolvedRealization
§fn eq(&self, other: &ResolvedRealization) -> bool
fn eq(&self, other: &ResolvedRealization) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ResolvedRealization
Auto Trait Implementations§
impl Freeze for ResolvedRealization
impl RefUnwindSafe for ResolvedRealization
impl Send for ResolvedRealization
impl Sync for ResolvedRealization
impl Unpin for ResolvedRealization
impl UnsafeUnpin for ResolvedRealization
impl UnwindSafe for ResolvedRealization
Blanket Implementations§
Source§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
§fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
§impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
§type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Source§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
§fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§impl<T> ConvUtil for T
impl<T> ConvUtil for T
§fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
§fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
§fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
Source§impl<T> From<T> for T
impl<T> From<T> for T
Source§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
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>where
F: FnOnce(&Self) -> bool,
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>where
F: FnOnce(&Self) -> bool,
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§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Same for T
impl<T> Same for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.