Skip to main content

FiredOptimizations

Struct FiredOptimizations 

Source
pub struct FiredOptimizations { /* private fields */ }
Expand description

Which optimizations actually FIRED during a single compile — one bit per Opt, the same bit layout as OptimizationConfig. An optimization is “fired” when it actually changed the program or emitted its optimized form for this compile, as distinct from merely being enabled. Populated only while a firing trace is active (see logicaffeine_compile’s traced compile entry points); the normal compile path never records into it.

Implementations§

Source§

impl FiredOptimizations

Source

pub const fn new() -> Self

An empty set — nothing fired.

Source

pub const fn from_bits(fired: u64) -> Self

Build from a raw bitmask (bit layout = Opt::bit).

Source

pub fn mark(&mut self, opt: Opt)

Record that opt fired.

Source

pub const fn fired(&self, opt: Opt) -> bool

Whether opt fired.

Source

pub const fn is_empty(&self) -> bool

Whether nothing fired.

Source

pub const fn bits(&self) -> u64

The raw fired bitmask.

Source

pub fn merge(&mut self, other: &FiredOptimizations)

Fold another set’s fired bits into this one.

Source

pub fn opts(&self) -> Vec<Opt>

The optimizations that fired, in registry order.

Source

pub fn keywords(&self) -> Vec<&'static str>

The decorator keywords of the optimizations that fired, in registry order.

Trait Implementations§

Source§

impl Clone for FiredOptimizations

Source§

fn clone(&self) -> FiredOptimizations

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for FiredOptimizations

Source§

impl Debug for FiredOptimizations

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for FiredOptimizations

Source§

fn default() -> FiredOptimizations

Returns the “default value” for a type. Read more
Source§

impl Eq for FiredOptimizations

Source§

impl PartialEq for FiredOptimizations

Source§

fn eq(&self, other: &FiredOptimizations) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for FiredOptimizations

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.