summaryrefslogtreecommitdiff
path: root/ext/-test-/proc
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-11-16 18:17:24 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-11-16 18:17:24 +0000
commit6f7527996e3e4ea40adb663d4f6994fe410d6370 (patch)
treec4431be300911bac6afe8728e4d939417845006e /ext/-test-/proc
parentde870875f773f5a680b12e5306bc316d35465fe5 (diff)
proc/receiver.c: commit miss
* ext/-test-/proc/receiver.c: wrapper for rb_current_receiver. [Feature #10195] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/-test-/proc')
-rw-r--r--ext/-test-/proc/receiver.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/ext/-test-/proc/receiver.c b/ext/-test-/proc/receiver.c
new file mode 100644
index 0000000..fe44a22
--- /dev/null
+++ b/ext/-test-/proc/receiver.c
@@ -0,0 +1,21 @@
+#include "ruby.h"
+
+VALUE rb_current_receiver(void);
+
+static VALUE
+bug_proc_call_receiver(RB_BLOCK_CALL_FUNC_ARGLIST(yieldarg, procarg))
+{
+ return rb_current_receiver();
+}
+
+static VALUE
+bug_proc_make_call_receiver(VALUE self, VALUE procarg)
+{
+ return rb_proc_new(bug_proc_call_receiver, procarg);
+}
+
+void
+Init_receiver(VALUE klass)
+{
+ rb_define_singleton_method(klass, "make_call_receiver", bug_proc_make_call_receiver, 1);
+}