Revision: 3754 http://trac.macosforge.org/projects/ruby/changeset/3754 Author: lsansonetti@apple.com Date: 2010-03-12 20:04:15 -0800 (Fri, 12 Mar 2010) Log Message: ----------- inline the boxing code Modified Paths: -------------- MacRuby/trunk/numeric.c MacRuby/trunk/objc.h Modified: MacRuby/trunk/numeric.c =================================================================== --- MacRuby/trunk/numeric.c 2010-03-13 03:57:05 UTC (rev 3753) +++ MacRuby/trunk/numeric.c 2010-03-13 04:04:15 UTC (rev 3754) @@ -93,34 +93,6 @@ VALUE rb_eZeroDivError; VALUE rb_eFloatDomainError; -static VALUE -rb_box_fixfloat0(double value) -{ - CFNumberRef number = CFNumberCreate(NULL, kCFNumberDoubleType, &value); - CFMakeCollectable(number); - return (VALUE)number; -} - -VALUE -rb_box_fixfloat(VALUE fixfloat) -{ - return rb_box_fixfloat0(NUM2DBL(fixfloat)); -} - -static VALUE -rb_box_fixnum0(long value) -{ - CFNumberRef number = CFNumberCreate(NULL, kCFNumberLongType, &value); - CFMakeCollectable(number); - return (VALUE)number; -} - -VALUE -rb_box_fixnum(VALUE fixnum) -{ - return rb_box_fixnum0(FIX2LONG(fixnum)); -} - void rb_num_zerodiv(void) { Modified: MacRuby/trunk/objc.h =================================================================== --- MacRuby/trunk/objc.h 2010-03-13 03:57:05 UTC (rev 3753) +++ MacRuby/trunk/objc.h 2010-03-13 04:04:15 UTC (rev 3754) @@ -167,9 +167,6 @@ return arity; } -VALUE rb_box_fixnum(VALUE); -VALUE rb_box_fixfloat(VALUE); - static inline id rb_rval_to_ocid(VALUE obj) { @@ -184,10 +181,17 @@ return (id)kCFNull; } if (FIXNUM_P(obj)) { - return (id)rb_box_fixnum(obj); + long val = FIX2LONG(obj); + CFNumberRef number = CFNumberCreate(NULL, kCFNumberLongType, &val); + CFMakeCollectable(number); + return (id)number; } if (FIXFLOAT_P(obj)) { - return (id)rb_box_fixfloat(obj); + double val = NUM2DBL(obj); + CFNumberRef number = CFNumberCreate(NULL, kCFNumberDoubleType, + &val); + CFMakeCollectable(number); + return (id)number; } } return (id)obj;