[macruby-changes] [1556] MacRuby/branches/experimental/include/ruby/ruby.h

source_changes at macosforge.org source_changes at macosforge.org
Thu May 7 19:37:15 PDT 2009


Revision: 1556
          http://trac.macosforge.org/projects/ruby/changeset/1556
Author:   lsansonetti at apple.com
Date:     2009-05-07 19:37:14 -0700 (Thu, 07 May 2009)
Log Message:
-----------
better TYPE() macro which does RCLASS_META at the end

Modified Paths:
--------------
    MacRuby/branches/experimental/include/ruby/ruby.h

Modified: MacRuby/branches/experimental/include/ruby/ruby.h
===================================================================
--- MacRuby/branches/experimental/include/ruby/ruby.h	2009-05-08 02:36:37 UTC (rev 1555)
+++ MacRuby/branches/experimental/include/ruby/ruby.h	2009-05-08 02:37:14 UTC (rev 1556)
@@ -1212,38 +1212,63 @@
 {
     Class k;
     if (IMMEDIATE_P(obj)) {
-	if (FIXNUM_P(obj)) return T_FIXNUM;
-	if (obj == Qtrue) return T_TRUE;
+	if (FIXNUM_P(obj)) {
+	    return T_FIXNUM;
+	}
+	if (obj == Qtrue) {
+	    return T_TRUE;
+	}
 #if !WITH_OBJC
-	if (SYMBOL_P(obj)) return T_SYMBOL;
+	if (SYMBOL_P(obj)) {
+	    return T_SYMBOL;
+	}
 #endif
-	if (obj == Qundef) return T_UNDEF;
+	if (obj == Qundef) {
+	    return T_UNDEF;
+	}
     }
     else if (!RTEST(obj)) {
-	if (obj == Qnil) return T_NIL;
-	if (obj == Qfalse) return T_FALSE;
+	if (obj == Qnil) {
+	    return T_NIL;
+	}
+	if (obj == Qfalse) {
+	    return T_FALSE;
+	}
     }
 #if WITH_OBJC
     else if ((k = *(Class *)obj) != NULL) {
-	if (RCLASS_META(k)) {
-	    if (RCLASS_MODULE(obj)) return T_MODULE;
-	    else return T_CLASS;
-	}
-	if (k == (Class)rb_cSymbol) return T_SYMBOL;
 	if (k == (Class)rb_cCFString
 	    || (RCLASS_VERSION(k) & RCLASS_IS_STRING_SUBCLASS) 
-		== RCLASS_IS_STRING_SUBCLASS) 
+		== RCLASS_IS_STRING_SUBCLASS) {
 	    return T_STRING;
+	}
 	if (k == (Class)rb_cCFArray
 	    || (RCLASS_VERSION(k) & RCLASS_IS_ARRAY_SUBCLASS) 
-		== RCLASS_IS_ARRAY_SUBCLASS) 
+		== RCLASS_IS_ARRAY_SUBCLASS) {
 	    return T_ARRAY;
+	}
 	if (k == (Class)rb_cCFHash
 	    || (RCLASS_VERSION(k) & RCLASS_IS_HASH_SUBCLASS) 
-		== RCLASS_IS_HASH_SUBCLASS)
+	        == RCLASS_IS_HASH_SUBCLASS) {
 	    return T_HASH;
-	if (k == (Class)rb_cFixnum) return T_FIXNUM;
-	if (NATIVE(obj)) return T_NATIVE;
+	}
+	if (RCLASS_META(k)) {
+	    if (RCLASS_MODULE(obj)) {
+		return T_MODULE;
+	    }
+	    else {
+		return T_CLASS;
+	    }
+	}
+	if (k == (Class)rb_cSymbol) {
+	    return T_SYMBOL;
+	}
+	if (k == (Class)rb_cFixnum) {
+	    return T_FIXNUM;
+	}
+	if (NATIVE(obj)) {
+	    return T_NATIVE;
+	}
     }
 #endif
     return BUILTIN_TYPE(obj);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090507/5976347a/attachment-0001.html>


More information about the macruby-changes mailing list