summaryrefslogtreecommitdiffhomepage
path: root/include/mruby.h
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2021-12-29 16:23:33 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2021-12-29 16:39:29 +0900
commit4f297ac29cec0c12aae1f7fd56390fdb6b925547 (patch)
tree784efb6605d34bae3267be8908d35acbf5f96eb4 /include/mruby.h
parentb6283978c586702e1b2ff182b83ceb3e2bf691b3 (diff)
downloadmruby-4f297ac29cec0c12aae1f7fd56390fdb6b925547.tar.gz
mruby-4f297ac29cec0c12aae1f7fd56390fdb6b925547.zip
object.c: introduce `mrb_ensure_{int,float}_type`.
Since `mrb_to_integer` and `mrb_to_float` does not convert the object but checks types, they are named so by historical reason. We introduced properly named functions. This commit obsoletes the following functions: * mrb_to_integer() * mrb_to_int() * mrb_to_float() Use `mrb_ensure_int_type()` instead for the first 2 functions. Use `mrb_ensure_float_type()` for the last.
Diffstat (limited to 'include/mruby.h')
-rw-r--r--include/mruby.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/include/mruby.h b/include/mruby.h
index 21b96817a..465c944fd 100644
--- a/include/mruby.h
+++ b/include/mruby.h
@@ -1269,7 +1269,9 @@ MRB_API mrb_bool mrb_obj_eq(mrb_state *mrb, mrb_value a, mrb_value b);
MRB_API mrb_bool mrb_obj_equal(mrb_state *mrb, mrb_value a, mrb_value b);
MRB_API mrb_bool mrb_equal(mrb_state *mrb, mrb_value obj1, mrb_value obj2);
#ifndef MRB_NO_FLOAT
-MRB_API mrb_value mrb_to_float(mrb_state *mrb, mrb_value val);
+MRB_API mrb_value mrb_ensure_float_type(mrb_state *mrb, mrb_value val);
+/* obsolete: use mrb_ensure_float_type() instead */
+#define mrb_to_float(mrb, val) mrb_ensure_float_type(mrb, val)
#endif
MRB_API mrb_value mrb_inspect(mrb_state *mrb, mrb_value obj);
MRB_API mrb_bool mrb_eql(mrb_state *mrb, mrb_value obj1, mrb_value obj2);
@@ -1398,9 +1400,11 @@ MRB_API mrb_value mrb_check_string_type(mrb_state *mrb, mrb_value str);
#define mrb_to_str(mrb, str) mrb_ensure_string_type(mrb,str)
/* obsolete: use mrb_obj_as_string() instead */
#define mrb_str_to_str(mrb, str) mrb_obj_as_string(mrb, str)
-MRB_API mrb_value mrb_to_integer(mrb_state *mrb, mrb_value val);
-#define mrb_to_int(mrb, val) mrb_to_integer(mrb, val)
-#define mrb_as_int(mrb, val) mrb_integer(mrb_to_integer(mrb, val))
+MRB_API mrb_value mrb_ensure_int_type(mrb_state *mrb, mrb_value val);
+#define mrb_as_int(mrb, val) mrb_integer(mrb_ensure_int_type(mrb, val))
+/* obsolete: use mrb_ensure_int_type() instead */
+#define mrb_to_integer(mrb, val) mrb_ensure_int_type(mrb, val)
+#define mrb_to_int(mrb, val) mrb_ensure_int_type(mrb, val)
/* string type checking (contrary to the name, it doesn't convert) */
MRB_API void mrb_check_type(mrb_state *mrb, mrb_value x, enum mrb_vtype t);