pub trait OwnershipVerifier {
// Required method
fn verify(&self, member: &MemberId, destination: &Path) -> Ownership;
}Expand description
Consumer-supplied proof that a live destination belongs to this deployment.
The verifier is the only way a destination can be classified as
Ownership::Owned: core never infers ownership from an
InstallPlan, from a member’s presence, or from anything else. It is
also infallible by design — verify returns
an Ownership value, never a Result, so a verifier cannot fail the
transaction by erroring; it reports trouble as Ownership::Unknown, and
Unknown denies mutation.
Implementations MUST be synchronous, deterministic for a fixed filesystem
state, free of application-specific version types, and treat verifier
errors or ambiguity as Ownership::Unknown or a hard failure — never
Ownership::Owned.
The verifier runs again immediately before destructive mutation while the
crate::MutationLock is held. A change between preflight and locked
classification fails the transaction.
Required Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".