#[non_exhaustive]pub enum ConsentDefect<'a> {
NoTransfer,
OutgoingAuthorisationMissing,
NotAccepted,
IncomingOperatorMismatch {
expected: &'a str,
found: &'a str,
},
OperationMismatch {
edge_operation: &'a str,
transfer_reason: &'a str,
},
}Expand description
Why one derivation edge is not supported by a transfer of responsibility.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
NoTransfer
No transfer record corresponds to this predecessor at all, so the claim to have taken responsibility rests on this operator’s own assertion.
OutgoingAuthorisationMissing
The outgoing operator never authorised the handover.
The defect that matters most: without it there is no predecessor consent at all, and the edge is exactly the unilateral assertion the rule exists to catch.
NotAccepted
The handover was never completed — still pending, or rejected, or cancelled. An abandoned transfer does not support a live claim.
IncomingOperatorMismatch
The transfer hands responsibility to someone other than this passport’s operator, so it is not evidence that this operator took it on.
OperationMismatch
A transfer exists but records a different operation than the edge claims.
Art. 77(7)’s four operations carry different legal consequences, so the two must name the same one.
Trait Implementations§
Source§impl<'a> Clone for ConsentDefect<'a>
impl<'a> Clone for ConsentDefect<'a>
Source§fn clone(&self) -> ConsentDefect<'a>
fn clone(&self) -> ConsentDefect<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more