pub struct CompileOptions {
pub workload_dir: Option<PathBuf>,
pub polydat_lib_paths: Vec<PathBuf>,
pub strict: bool,
pub required_outputs: Vec<String>,
pub context_label: Option<String>,
pub cursor_limit: Option<u64>,
pub kernel_opt: KernelOptLevel,
pub input_variance: InputVariance,
}Expand description
Optional compile-time configuration passed through to
compile_ast_interpreter_with_options when finalize compiles the body. When
every field is at its default, finalize compiles the statements
under the default DSL options (subcontext_construction.md §2.3).
Fields§
§workload_dir: Option<PathBuf>The directory relative data-file paths resolve against.
polydat_lib_paths: Vec<PathBuf>Library search paths.
strict: boolWhether to enforce strict validation.
required_outputs: Vec<String>The outputs to keep; every output when empty.
context_label: Option<String>The diagnostic context label, if any.
cursor_limit: Option<u64>A limit on every cursor’s extent, if any.
kernel_opt: KernelOptLevelSession-wide optimization level for op-template synthesis.
Release (the default) injects a magic extern (body /
count / ok) only when the result source references it;
Diagnostic allocates all three so step-debug / cycle-replay
sees every write (subcontext_construction.md §3.2). See
KernelOptLevel.
input_variance: InputVarianceWhat the compiler does with an input whose type it inferred
(input_variance.md §4); the same setting as
crate::dsl::compile::CompileOptions::input_variance.
Trait Implementations§
Source§impl Clone for CompileOptions
impl Clone for CompileOptions
Source§impl Debug for CompileOptions
impl Debug for CompileOptions
Auto Trait Implementations§
impl Freeze for CompileOptions
impl RefUnwindSafe for CompileOptions
impl Send for CompileOptions
impl Sync for CompileOptions
impl Unpin for CompileOptions
impl UnsafeUnpin for CompileOptions
impl UnwindSafe for CompileOptions
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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