1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* eval.c (rb_f_send): allow send/__send__ to call methods of all

visibility again.  we no longer provide __send, __send!.

* eval.c (rb_invoke_method): new method to honor private
  visibility.  if it's invoked in a function call style, it calls
  private methods as well (previous 1.9 send behavior).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 2007-11-04 20:36:20 +00:00
parent ed823523e3
commit 1eee78b876
28 changed files with 92 additions and 101 deletions

View file

@ -652,7 +652,7 @@ class TestAssignmentGen < Test::Unit::TestCase
assign = assign.to_s
code1 = "#{assign}; [#{vars.join(",")}]"
assign.gsub!(/\bv\d+\b/, "o.a")
code2 = "o=[];class << o; self end.send!(:define_method,:a=){|v|self << v};#{assign};o"
code2 = "o=[];class << o; self end.send(:define_method,:a=){|v|self << v};#{assign};o"
begin
vals1 = eval(code1)
rescue Exception