pub struct LeanScenarioOptions {
pub package_name: Option<String>,
pub project_files: Option<bool>,
pub include: Vec<String>,
pub exclude: Vec<String>,
pub opaque: Vec<String>,
pub charon_args: Vec<String>,
pub aeneas_args: Vec<String>,
pub cargo_args: Vec<String>,
}Expand description
The inputs a proof scenario resolves for the Lean backend, carried
through the __json re-entry rather than argv: verbatim argument
arrays (no shell splitting), the compiled item selection, and the
package-layout overrides. Empty on flag-driven into invocations.
Fields§
§package_name: Option<String>The Lean package name, overriding the crate-name derivation.
project_files: Option<bool>The scenario’s project-files key, overriding the top-level key.
include: Vec<String>Charon name patterns compiled to --start-from.
exclude: Vec<String>Charon name patterns compiled to --exclude.
opaque: Vec<String>Charon name patterns compiled to --opaque, the default opaque
set already merged in.
charon_args: Vec<String>Verbatim extra charon arguments, one element per process argument.
aeneas_args: Vec<String>Verbatim extra aeneas arguments, one element per process argument.
cargo_args: Vec<String>Cargo arguments (feature selection) for the cargo invocation charon drives.
Implementations§
Source§impl LeanScenarioOptions
impl LeanScenarioOptions
Sourcepub fn selection_flags(&self) -> Vec<String>
pub fn selection_flags(&self) -> Vec<String>
The charon flags compiled from the unified item-selection keys.
Both the real charon invocation and the --dry-run display use
this compilation, so the two cannot diverge.
Trait Implementations§
Source§impl Clone for LeanScenarioOptions
impl Clone for LeanScenarioOptions
Source§fn clone(&self) -> LeanScenarioOptions
fn clone(&self) -> LeanScenarioOptions
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LeanScenarioOptions
impl Debug for LeanScenarioOptions
Source§impl Default for LeanScenarioOptions
impl Default for LeanScenarioOptions
Source§fn default() -> LeanScenarioOptions
fn default() -> LeanScenarioOptions
Source§impl<'de> Deserialize<'de> for LeanScenarioOptions
impl<'de> Deserialize<'de> for LeanScenarioOptions
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Hash for LeanScenarioOptions
impl Hash for LeanScenarioOptions
Source§impl JsonSchema for LeanScenarioOptions
impl JsonSchema for LeanScenarioOptions
Source§fn schema_name() -> String
fn schema_name() -> String
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref keyword. Read moreSource§impl PartialEq for LeanScenarioOptions
impl PartialEq for LeanScenarioOptions
Source§impl Serialize for LeanScenarioOptions
impl Serialize for LeanScenarioOptions
impl Eq for LeanScenarioOptions
impl StructuralPartialEq for LeanScenarioOptions
Auto Trait Implementations§
impl Freeze for LeanScenarioOptions
impl RefUnwindSafe for LeanScenarioOptions
impl Send for LeanScenarioOptions
impl Sync for LeanScenarioOptions
impl Unpin for LeanScenarioOptions
impl UnwindSafe for LeanScenarioOptions
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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>
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>
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