[macruby-changes] [536] MacRuby/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Sat Aug 30 19:58:28 PDT 2008
Revision: 536
http://trac.macosforge.org/projects/ruby/changeset/536
Author: lsansonetti at apple.com
Date: 2008-08-30 19:58:28 -0700 (Sat, 30 Aug 2008)
Log Message:
-----------
set Symbol as a constant of Object, to make sure it can be re-opened. This fixes yaml serialization of Symbol objects.
Modified Paths:
--------------
MacRuby/trunk/class.c
MacRuby/trunk/string.c
Modified: MacRuby/trunk/class.c
===================================================================
--- MacRuby/trunk/class.c 2008-08-31 02:10:23 UTC (rev 535)
+++ MacRuby/trunk/class.c 2008-08-31 02:58:28 UTC (rev 536)
@@ -153,8 +153,9 @@
rb_define_object_special_methods(klass);
}
- if (name != NULL && rb_class_tbl != NULL)
+ if (name != NULL && rb_class_tbl != NULL) {
st_insert(rb_class_tbl, (st_data_t)rb_intern(name), (st_data_t)klass);
+ }
return klass;
}
@@ -162,8 +163,7 @@
VALUE
rb_class_boot(VALUE super)
{
- VALUE klass = rb_objc_create_class(NULL, super);
- return (VALUE)klass;
+ return rb_objc_create_class(NULL, super);
}
void
Modified: MacRuby/trunk/string.c
===================================================================
--- MacRuby/trunk/string.c 2008-08-31 02:10:23 UTC (rev 535)
+++ MacRuby/trunk/string.c 2008-08-31 02:58:28 UTC (rev 536)
@@ -5389,6 +5389,8 @@
/* rb_cSymbol is defined in parse.y because it's needed early */
rb_set_class_path(rb_cSymbol, rb_cObject, "Symbol");
+ rb_const_set(rb_cObject, rb_intern("Symbol"), rb_cSymbol);
+
rb_undef_alloc_func(rb_cSymbol);
rb_undef_method(CLASS_OF(rb_cSymbol), "new");
rb_define_singleton_method(rb_cSymbol, "all_symbols", rb_sym_all_symbols, 0); /* in parse.y */
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macruby-changes/attachments/20080830/6d760d47/attachment.html
More information about the macruby-changes
mailing list