Implement IntInst methods

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This commit is contained in:
2024-09-24 16:57:22 -07:00
parent 890467e02c
commit c8d670ba59
3 changed files with 116 additions and 3 deletions

View File

@@ -146,7 +146,19 @@ pub fn init_types(builtins: &mut HashMap<String, ObjP>) {
__add__ => builtins.create_builtin_function("__add__", StrInst::add, 2),
__mul__ => builtins.create_builtin_function("__mul__", StrInst::mul, 2),
},
Int { },
Int {
// Operators
__add__ => builtins.create_builtin_function("__add__", IntInst::add, 2),
__sub__ => builtins.create_builtin_function("__sub__", IntInst::sub, 2),
__mul__ => builtins.create_builtin_function("__mul__", IntInst::mul, 2),
__div__ => builtins.create_builtin_function("__div__", IntInst::div, 2),
__gt__ => builtins.create_builtin_function("__gt__", IntInst::gt, 2),
__ge__ => builtins.create_builtin_function("__ge__", IntInst::ge, 2),
__lt__ => builtins.create_builtin_function("__lt__", IntInst::lt, 2),
__le__ => builtins.create_builtin_function("__le__", IntInst::le, 2),
__pos__ => builtins.create_builtin_function("__pos__", IntInst::pos, 2),
__neg__ => builtins.create_builtin_function("__neg__", IntInst::neg, 2),
},
Float { },
Bool { },
Nil { },