Revision: 3671 http://trac.macosforge.org/projects/ruby/changeset/3671 Author: lsansonetti@apple.com Date: 2010-03-02 17:35:59 -0800 (Tue, 02 Mar 2010) Log Message: ----------- added #try_convert Modified Paths: -------------- MacRuby/branches/icu/string.c Modified: MacRuby/branches/icu/string.c =================================================================== --- MacRuby/branches/icu/string.c 2010-03-03 01:33:12 UTC (rev 3670) +++ MacRuby/branches/icu/string.c 2010-03-03 01:35:59 UTC (rev 3671) @@ -1175,6 +1175,24 @@ /* * call-seq: + * String.try_convert(obj) -> string or nil + * + * Try to convert <i>obj</i> into a String, using to_str method. + * Returns converted regexp or nil if <i>obj</i> cannot be converted + * for any reason. + * + * String.try_convert("str") # => str + * String.try_convert(/re/) # => nil + */ + +static VALUE +rstr_try_convert(VALUE self, SEL sel, VALUE other) +{ + return rb_check_string_type(other); +} + +/* + * call-seq: * String.new(str="") => new_str * * Returns a new string object containing a copy of <i>str</i>. @@ -3873,6 +3891,8 @@ rb_const_set(rb_cObject, rb_intern("String"), rb_cRubyString); rb_objc_define_method(*(VALUE *)rb_cRubyString, "alloc", rstr_alloc, 0); + rb_objc_define_method(*(VALUE *)rb_cRubyString, "try_convert", + rstr_try_convert, 1); rb_objc_define_method(rb_cRubyString, "initialize", rstr_initialize, -1); rb_objc_define_method(rb_cRubyString, "initialize_copy", rstr_replace, 1); rb_objc_define_method(rb_cRubyString, "dup", rstr_dup, 0);
participants (1)
-
source_changes@macosforge.org