pub struct Instructions {
pub version: u32,
pub register_count: u16,
pub register_types: Vec<Arc<LemmaType>>,
pub constants: Vec<LiteralValue>,
pub data_manifest: Vec<DataPath>,
pub veto_messages: Vec<String>,
pub code: Vec<Instruction>,
pub arm_tags: Vec<ArmTag>,
pub conversion_tags: Vec<ConversionTag>,
}Expand description
Compiled normalized equation for authoritative evaluation.
Fields§
§version: u32§register_count: u16§register_types: Vec<Arc<LemmaType>>§constants: Vec<LiteralValue>§data_manifest: Vec<DataPath>§veto_messages: Vec<String>§code: Vec<Instruction>Piecewise arm provenance: which JumpIfFalse/Return instructions
belong to which source branch (ExecutableRule::branches index).
Emitted by compile_piecewise_rule after all rewrite passes, so arm
tags are present in both the optimized and source instruction streams.
Unit-conversion provenance: maps a UnitConversion instruction back
to the source location of the conversion expression it compiles.
Reliable in the source (un-optimized) stream; best-effort in the
optimized stream (rewrites may fold or merge conversion nodes).
Trait Implementations§
Source§impl Clone for Instructions
impl Clone for Instructions
Source§fn clone(&self) -> Instructions
fn clone(&self) -> Instructions
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 Instructions
impl Debug for Instructions
Source§impl<'de> Deserialize<'de> for Instructions
impl<'de> Deserialize<'de> for Instructions
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Instructions
impl RefUnwindSafe for Instructions
impl Send for Instructions
impl Sync for Instructions
impl Unpin for Instructions
impl UnsafeUnpin for Instructions
impl UnwindSafe for Instructions
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