[macruby-changes] [1290] MacRuby/branches/experimental
source_changes at macosforge.org
source_changes at macosforge.org
Thu Apr 2 19:35:45 PDT 2009
Revision: 1290
http://trac.macosforge.org/projects/ruby/changeset/1290
Author: lsansonetti at apple.com
Date: 2009-04-02 19:35:45 -0700 (Thu, 02 Apr 2009)
Log Message:
-----------
implemented TOPLEVEL_BINDING
Modified Paths:
--------------
MacRuby/branches/experimental/eval.c
MacRuby/branches/experimental/proc.c
Modified: MacRuby/branches/experimental/eval.c
===================================================================
--- MacRuby/branches/experimental/eval.c 2009-04-03 02:27:16 UTC (rev 1289)
+++ MacRuby/branches/experimental/eval.c 2009-04-03 02:35:45 UTC (rev 1290)
@@ -18,7 +18,6 @@
#include "id.h"
VALUE proc_invoke(VALUE, VALUE, VALUE, VALUE);
-VALUE rb_binding_new(void);
ID rb_frame_callee(void);
VALUE rb_eLocalJumpError;
Modified: MacRuby/branches/experimental/proc.c
===================================================================
--- MacRuby/branches/experimental/proc.c 2009-04-03 02:27:16 UTC (rev 1289)
+++ MacRuby/branches/experimental/proc.c 2009-04-03 02:35:45 UTC (rev 1290)
@@ -233,6 +233,12 @@
return Data_Wrap_Struct(rb_cBinding, NULL, NULL, bind);
}
+static VALUE
+rb_binding_new_from_binding(rb_vm_binding_t *bind)
+{
+ return Data_Wrap_Struct(rb_cBinding, NULL, NULL, bind);
+}
+
/*
* call-seq:
* binding -> a_binding
@@ -1748,5 +1754,11 @@
rb_objc_define_method(rb_cBinding, "dup", binding_dup, 0);
rb_objc_define_method(rb_cBinding, "eval", bind_eval, -1);
rb_objc_define_method(rb_mKernel, "binding", rb_f_binding, 0);
+
+ rb_vm_binding_t *binding = (rb_vm_binding_t *)xmalloc(
+ sizeof(rb_vm_binding_t));
+ GC_WB(&binding->self, rb_vm_top_self());
+ rb_define_global_const("TOPLEVEL_BINDING",
+ rb_binding_new_from_binding(binding));
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090402/5960507f/attachment.html>
More information about the macruby-changes
mailing list