txlyre 1 day ago
parent
commit
b6a9a2bc55
1 changed files with 11 additions and 0 deletions
  1. 11 0
      qirt.c

+ 11 - 0
qirt.c

@@ -3847,6 +3847,16 @@ qi_value_t *qi_builtin_num(qi_state_t *state, qi_size_t pargc,
   return qi_to_number(state, a);
 }
 
+qi_value_t *qi_builtin_int(qi_state_t *state, qi_size_t pargc,
+                           qi_list_t *pargs) {
+  qi_value_t *a = qi_list_data(pargs, 0);
+
+  qi_value_t *value = qi_to_number(state, a);
+  value->value.number = (long)value->value.number;
+
+  return value;
+}
+
 qi_value_t *qi_builtin_bytes(qi_state_t *state, qi_size_t pargc,
                              qi_list_t *pargs) {
   qi_value_t *a = qi_list_data(pargs, 0);
@@ -4064,6 +4074,7 @@ static void qi_state_setup(qi_state_t *state) {
   qi_add_builtin(state, "str", 1, qi_builtin_str);
   qi_add_builtin(state, "bool", 1, qi_builtin_bool);
   qi_add_builtin(state, "num", 1, qi_builtin_num);
+  qi_add_builtin(state, "int", 1, qi_builtin_int);
   qi_add_builtin(state, "bytes", 1, qi_builtin_bytes);
   qi_add_builtin(state, "list", 1, qi_builtin_list);
   qi_add_builtin(state, "tuple", 1, qi_builtin_tuple);