start accounting for pure/impure builtins

Signed-off-by: Ava Affine <ava@sunnypup.io>
This commit is contained in:
Ava Apples Affine 2024-06-12 11:13:34 -07:00
parent 2809569c35
commit 143173f046
6 changed files with 38 additions and 0 deletions

View file

@ -532,6 +532,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: ADD_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(add_callback)),
optimizable: true,
..Default::default()
},
);
@ -544,6 +545,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: SUB_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(sub_callback)),
optimizable: true,
..Default::default()
},
);
@ -556,6 +558,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: DIV_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(div_callback)),
optimizable: true,
..Default::default()
},
);
@ -568,6 +571,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: MUL_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(mul_callback)),
optimizable: true,
..Default::default()
},
);
@ -580,6 +584,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: INTCAST_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(intcast_callback)),
optimizable: true,
..Default::default()
},
);
@ -592,6 +597,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: FLOATCAST_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(floatcast_callback)),
optimizable: true,
..Default::default()
},
);
@ -603,6 +609,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
args: Args::Lazy(2),
conditional_branches: false,
docs: EXP_DOCSTRING.to_string(),
optimizable: true,
value: ValueType::Internal(Rc::new(exp_callback)),
..Default::default()
},
@ -616,6 +623,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: MOD_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(mod_callback)),
optimizable: true,
..Default::default()
},
);
@ -628,6 +636,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: ISGT_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(isgt_callback)),
optimizable: true,
..Default::default()
},
);
@ -640,6 +649,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: ISLT_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(islt_callback)),
optimizable: true,
..Default::default()
},
);
@ -652,6 +662,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: ISGTE_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(isgte_callback)),
optimizable: true,
..Default::default()
},
);
@ -664,6 +675,7 @@ pub fn add_math_lib(syms: &mut SymTable) {
conditional_branches: false,
docs: ISLTE_DOCSTRING.to_string(),
value: ValueType::Internal(Rc::new(islte_callback)),
optimizable: true,
..Default::default()
},
);