struct ProofReport {
axioms: Option<String>,
errors: Vec<String>,
}Expand description
What lake build reported about the external proof of a single function
Fields§
§axioms: Option<String>The message of the #print axioms in the checking file, if it was elaborated
errors: Vec<String>Errors reported in the checking or proof file
Implementations§
Source§impl ProofReport
impl ProofReport
Sourcefn status(
self,
checking_file: &str,
sorries: &[String],
) -> Result<(), Vec<String>>
fn status( self, checking_file: &str, sorries: &[String], ) -> Result<(), Vec<String>>
The proof is accepted iff the checking file was elaborated (witnessed by the info message
of its #print axioms), neither the checking nor the proof file report errors, and the proof
does not depend on sorryAx, i.e., neither the proof nor any lemma it (transitively) uses
has a sorry. On failure, returns the relevant messages reported by lean, where sorries
are all the sorry warnings in the build (one of which is the culprit for a sorryAx).
Trait Implementations§
Auto Trait Implementations§
impl DynSend for ProofReport
impl DynSync for ProofReport
impl Freeze for ProofReport
impl RefUnwindSafe for ProofReport
impl Send for ProofReport
impl Sync for ProofReport
impl Unpin for ProofReport
impl UnsafeUnpin for ProofReport
impl UnwindSafe for ProofReport
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more