[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