pub struct MigrationAssertionPlan { /* private fields */ }Expand description
A context-free, canonical typed migration assertion.
Implementations§
Source§impl MigrationAssertionPlan
impl MigrationAssertionPlan
Sourcepub fn new(
bindings: Vec<AssertionBinding>,
patterns: Vec<AssertionPattern>,
outputs: Vec<BindingId>,
witnesses: Vec<BindingId>,
managed_semantics: ManagedSemanticSchemaFingerprint,
expectation: AssertionExpectation,
) -> Result<Self, Diagnostic>
pub fn new( bindings: Vec<AssertionBinding>, patterns: Vec<AssertionPattern>, outputs: Vec<BindingId>, witnesses: Vec<BindingId>, managed_semantics: ManagedSemanticSchemaFingerprint, expectation: AssertionExpectation, ) -> Result<Self, Diagnostic>
Validate and construct one canonical plan under fixed protocol limits.
Sourcepub const fn format(&self) -> FormatVersion
pub const fn format(&self) -> FormatVersion
Return the owning format version.
Sourcepub const fn managed_semantics(&self) -> &ManagedSemanticSchemaFingerprint
pub const fn managed_semantics(&self) -> &ManagedSemanticSchemaFingerprint
Return the exact managed semantic schema this plan was validated against.
Sourcepub fn bindings(&self) -> &[AssertionBinding]
pub fn bindings(&self) -> &[AssertionBinding]
Return dense binding declarations.
Sourcepub fn binding(&self, id: BindingId) -> Option<&AssertionBinding>
pub fn binding(&self, id: BindingId) -> Option<&AssertionBinding>
Look up one dense binding declaration.
Sourcepub fn patterns(&self) -> &[AssertionPattern]
pub fn patterns(&self) -> &[AssertionPattern]
Return the ordered positive/negative pattern conjunction.
Sourcepub const fn expectation(&self) -> AssertionExpectation
pub const fn expectation(&self) -> AssertionExpectation
Return the closed assertion expectation.
Sourcepub const fn required_capabilities(&self) -> &CapabilitySet
pub const fn required_capabilities(&self) -> &CapabilitySet
Return open capabilities derived from syntax.
Sourcepub fn canonical_bytes(&self) -> Result<Vec<u8>, Diagnostic>
pub fn canonical_bytes(&self) -> Result<Vec<u8>, Diagnostic>
Encode exact canonical bytes.
Sourcepub fn fingerprint(
&self,
) -> Result<MigrationAssertionPlanFingerprint, Diagnostic>
pub fn fingerprint( &self, ) -> Result<MigrationAssertionPlanFingerprint, Diagnostic>
Compute a canonical domain-separated plan fingerprint.
Trait Implementations§
Source§impl Clone for MigrationAssertionPlan
impl Clone for MigrationAssertionPlan
Source§fn clone(&self) -> MigrationAssertionPlan
fn clone(&self) -> MigrationAssertionPlan
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 MigrationAssertionPlan
impl Debug for MigrationAssertionPlan
impl Eq for MigrationAssertionPlan
Source§impl PartialEq for MigrationAssertionPlan
impl PartialEq for MigrationAssertionPlan
Source§impl Serialize for MigrationAssertionPlan
impl Serialize for MigrationAssertionPlan
impl StructuralPartialEq for MigrationAssertionPlan
Auto Trait Implementations§
impl Freeze for MigrationAssertionPlan
impl RefUnwindSafe for MigrationAssertionPlan
impl Send for MigrationAssertionPlan
impl Sync for MigrationAssertionPlan
impl Unpin for MigrationAssertionPlan
impl UnsafeUnpin for MigrationAssertionPlan
impl UnwindSafe for MigrationAssertionPlan
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