#[non_exhaustive]pub enum LeanWorkerProofStateResult {
State {
info: Box<LeanWorkerProofStateInfo>,
},
Unavailable {
message: String,
proof_boundaries: Vec<LeanWorkerProofBoundaryCandidate>,
proof_boundaries_truncated: bool,
},
Ambiguous {
candidates: Vec<LeanWorkerDeclarationTargetInfo>,
},
NeedsBuild {
missing: Vec<String>,
},
}Expand description
Result for LeanWorkerModuleQuerySelector::ProofState.
Ambiguous and NeedsBuild are typed resolution verdicts that replace the
free-text Unavailable messages the parent used to string-match: a name is
genuinely multiply-defined (Ambiguous, with the competing declarations) or
could not resolve because the open environment is incomplete (NeedsBuild,
naming the unbuilt imports). Unavailable remains for the residual
non-resolution failures (no proof position matched the selector, the
resolved declaration is not in the snapshot).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
State
Fields
§
info: Box<LeanWorkerProofStateInfo>Ambiguous
Fields
§
candidates: Vec<LeanWorkerDeclarationTargetInfo>NeedsBuild
Trait Implementations§
Source§impl Clone for LeanWorkerProofStateResult
impl Clone for LeanWorkerProofStateResult
Source§fn clone(&self) -> LeanWorkerProofStateResult
fn clone(&self) -> LeanWorkerProofStateResult
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 LeanWorkerProofStateResult
impl Debug for LeanWorkerProofStateResult
Source§impl<'de> Deserialize<'de> for LeanWorkerProofStateResult
impl<'de> Deserialize<'de> for LeanWorkerProofStateResult
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<LeanWorkerProofStateResult, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<LeanWorkerProofStateResult, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for LeanWorkerProofStateResult
Source§impl PartialEq for LeanWorkerProofStateResult
impl PartialEq for LeanWorkerProofStateResult
Source§fn eq(&self, other: &LeanWorkerProofStateResult) -> bool
fn eq(&self, other: &LeanWorkerProofStateResult) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for LeanWorkerProofStateResult
impl Serialize for LeanWorkerProofStateResult
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for LeanWorkerProofStateResult
Auto Trait Implementations§
impl Freeze for LeanWorkerProofStateResult
impl RefUnwindSafe for LeanWorkerProofStateResult
impl Send for LeanWorkerProofStateResult
impl Sync for LeanWorkerProofStateResult
impl Unpin for LeanWorkerProofStateResult
impl UnsafeUnpin for LeanWorkerProofStateResult
impl UnwindSafe for LeanWorkerProofStateResult
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