summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-kernel-ext/src/kernel.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2018-09-19 21:51:53 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2018-09-19 22:01:59 +0900
commite207d5af43e9d6e09679e9aee9bf00a843528e0e (patch)
tree7f83038d199fc076b316d51654819ef6bad5fa78 /mrbgems/mruby-kernel-ext/src/kernel.c
parentc09d250ca148c0efc0167d55885bd20da87b43f7 (diff)
downloadmruby-e207d5af43e9d6e09679e9aee9bf00a843528e0e.tar.gz
mruby-e207d5af43e9d6e09679e9aee9bf00a843528e0e.zip
Remove implicit conversion using `to_str` method.
We have added internal convenience method `__to_str` which does string type check.
Diffstat (limited to 'mrbgems/mruby-kernel-ext/src/kernel.c')
-rw-r--r--mrbgems/mruby-kernel-ext/src/kernel.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/mrbgems/mruby-kernel-ext/src/kernel.c b/mrbgems/mruby-kernel-ext/src/kernel.c
index a60e9a210..bc2656399 100644
--- a/mrbgems/mruby-kernel-ext/src/kernel.c
+++ b/mrbgems/mruby-kernel-ext/src/kernel.c
@@ -141,8 +141,7 @@ mrb_f_float(mrb_state *mrb, mrb_value self)
* String(arg) -> string
*
* Returns <i>arg</i> as an <code>String</code>.
- *
- * First tries to call its <code>to_str</code> method, then its to_s method.
+ * converted using <code>to_s</code> method.
*
* String(self) #=> "main"
* String(self.class) #=> "Object"
@@ -154,10 +153,7 @@ mrb_f_string(mrb_state *mrb, mrb_value self)
mrb_value arg, tmp;
mrb_get_args(mrb, "o", &arg);
- tmp = mrb_check_convert_type(mrb, arg, MRB_TT_STRING, "String", "to_str");
- if (mrb_nil_p(tmp)) {
- tmp = mrb_check_convert_type(mrb, arg, MRB_TT_STRING, "String", "to_s");
- }
+ tmp = mrb_convert_type(mrb, arg, MRB_TT_STRING, "String", "to_s");
return tmp;
}