diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | numeric.c | 21 |
2 files changed, 25 insertions, 0 deletions
@@ -1,3 +1,7 @@ +Tue Nov 13 13:58:51 2007 Tanaka Akira <akr@fsij.org> + + * numeric.c (numeric.c): Integer#ord implemented. [ruby-dev:32206] + Tue Nov 13 02:57:04 2007 URABE Shyouhei <shyouhei@ice.uec.ac.jp> * numeric.c (flo_divmod): round to the nearest integer. @@ -1807,6 +1807,26 @@ int_chr(num) return rb_str_new(&c, 1); } +/* + * call-seq: + * int.ord => int + * + * Returns the int itself. + * + * ?a.ord #=> 97 + * + * This method is intended for compatibility to + * character constant in Ruby 1.9. + * For example, ?a.ord returns 97 both in 1.8 and 1.9. + */ + +static VALUE +int_ord(num) + VALUE num; +{ + return num; +} + /******************************************************************** * * Document-class: Fixnum @@ -2924,6 +2944,7 @@ Init_Numeric() rb_define_method(rb_cInteger, "succ", int_succ, 0); rb_define_method(rb_cInteger, "next", int_succ, 0); rb_define_method(rb_cInteger, "chr", int_chr, 0); + rb_define_method(rb_cInteger, "ord", int_ord, 0); rb_define_method(rb_cInteger, "to_i", int_to_i, 0); rb_define_method(rb_cInteger, "to_int", int_to_i, 0); rb_define_method(rb_cInteger, "floor", int_to_i, 0); |