pub struct CompileOpts {
pub target_architecture: CompilerTarget,
pub eta: bool,
pub prune: bool,
pub linearize_matches: OptLevel,
pub float_combinators: bool,
pub merge: bool,
pub inline: bool,
pub check_net_size: bool,
pub type_check: bool,
pub adt_encoding: AdtEncoding,
}
Fields§
§target_architecture: CompilerTarget
The Compiler target architecture
eta: bool
Enables hvm::eta_reduce.
prune: bool
Enables fun::transform::definition_pruning and hvm::prune.
linearize_matches: OptLevel
Enables fun::transform::linearize_matches.
float_combinators: bool
Enables fun::transform::float_combinators.
merge: bool
Enables fun::transform::definition_merge
inline: bool
Enables hvm::inline.
check_net_size: bool
Enables hvm::check_net_size.
type_check: bool
Enables type_check_book.
adt_encoding: AdtEncoding
Determines the encoding of constructors and matches.
Implementations§
Source§impl CompileOpts
impl CompileOpts
Sourcepub fn set_no_all(self) -> Self
pub fn set_no_all(self) -> Self
Set all optimizing options as false
pub fn check_for_strict(&self)
Trait Implementations§
Source§impl Clone for CompileOpts
impl Clone for CompileOpts
Source§fn clone(&self) -> CompileOpts
fn clone(&self) -> CompileOpts
Returns a duplicate of the value. Read more
1.0.0 · 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 CompileOpts
impl Debug for CompileOpts
Auto Trait Implementations§
impl Freeze for CompileOpts
impl RefUnwindSafe for CompileOpts
impl Send for CompileOpts
impl Sync for CompileOpts
impl Unpin for CompileOpts
impl UnwindSafe for CompileOpts
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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