pub enum EvidenceStatus {
Checked,
Rejected,
Unavailable,
Unsupported,
}Expand description
What the kernel-check capability concluded about a piece of Lean source.
The tag accessor on LeanKernelOutcome::status returns values of
this type, as does crate::LeanSession::check_evidence when
re-validating a captured crate::LeanEvidence handle.
Variants§
Checked
The kernel accepted the declaration. A crate::LeanEvidence
handle is available on the LeanKernelOutcome::Checked branch.
Rejected
The declaration was well-formed enough to reach kernel checking, and the kernel (or the elaborator’s type-check pass) refused it.
The capability ran but could not produce evidence — typically a parse failure that aborted before the kernel could see the declaration.
Unsupported
The source did not name a kind of declaration this capability
produces evidence for (for example a #check command, a
non-theorem definition, or a comment-only fragment).
Trait Implementations§
Source§impl Clone for EvidenceStatus
impl Clone for EvidenceStatus
Source§fn clone(&self) -> EvidenceStatus
fn clone(&self) -> EvidenceStatus
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EvidenceStatus
impl Debug for EvidenceStatus
Source§impl PartialEq for EvidenceStatus
impl PartialEq for EvidenceStatus
Source§fn eq(&self, other: &EvidenceStatus) -> bool
fn eq(&self, other: &EvidenceStatus) -> bool
self and other values to be equal, and is used by ==.Source§impl<'lean> TryFromLean<'lean> for EvidenceStatus
impl<'lean> TryFromLean<'lean> for EvidenceStatus
Source§fn try_from_lean(obj: Obj<'lean>) -> LeanResult<Self>
fn try_from_lean(obj: Obj<'lean>) -> LeanResult<Self>
Decode a nullary-only Lean EvidenceStatus inductive. Lean’s
compiler emits a nullary-only inductive as a scalar-tagged
pointer (lean_box(tag)) at the top-level boundary rather
than a heap-allocated zero-field constructor, so the decoder
reads through lean_unbox on the scalar branch and falls back
to ctor_tag only if a future encoding shift starts
materialising the inductive on the heap.
Tag order is Checked = 0, Rejected = 1, Unavailable = 2,
Unsupported = 3, matching the declaration order in
fixtures/lean/LeanRsFixture/Elaboration.lean’s EvidenceStatus
inductive.