Trait EvalRuleOps
Source pub(in rotation) trait EvalRuleOps {
type Bool: Copy;
type Int: Copy;
type Float: Copy;
Show 15 methods
// Required methods
fn const_bool(&mut self, value: bool) -> Self::Bool;
fn const_i32(&mut self, value: i32) -> Self::Int;
fn const_f64(&mut self, value: f64) -> Self::Float;
fn sub_f(&mut self, lhs: Self::Float, rhs: Self::Float) -> Self::Float;
fn mul_f(&mut self, lhs: Self::Float, rhs: Self::Float) -> Self::Float;
fn safe_div_f(
&mut self,
numerator: Self::Float,
denominator: Self::Float,
) -> Self::Float;
fn max_f(&mut self, lhs: Self::Float, rhs: Self::Float) -> Self::Float;
fn cmp_gt_f(&mut self, lhs: Self::Float, rhs: Self::Float) -> Self::Bool;
fn cmp_lt_f(&mut self, lhs: Self::Float, rhs: Self::Float) -> Self::Bool;
fn cmp_lte_f(&mut self, lhs: Self::Float, rhs: Self::Float) -> Self::Bool;
fn cmp_gt_i(&mut self, lhs: Self::Int, rhs: Self::Int) -> Self::Bool;
fn and_b(&mut self, lhs: Self::Bool, rhs: Self::Bool) -> Self::Bool;
fn or_b(&mut self, lhs: Self::Bool, rhs: Self::Bool) -> Self::Bool;
fn select_f(
&mut self,
condition: Self::Bool,
if_true: Self::Float,
if_false: Self::Float,
) -> Self::Float;
fn select_b(
&mut self,
condition: Self::Bool,
if_true: Self::Bool,
if_false: Self::Bool,
) -> Self::Bool;
}