e$B$1$$$8$e!w$$$7$D$+$G$9e(B.
e$B%P%0$J$N$+;EMM$J$N$+NI$/$o$+$i$J$$$N$G$9$,e(B,
#–
class Foo
def Foo.new(&block)
super
end
def Foo.foo(&block)
new() &block
end
end
Foo.foo
#–
e$B$r<B9T$9$k$He(B
tmp/test.rb:8:in foo': undefined method
&’ for #Foo:0x40218578
(NoMethodError)
e$B$H$N%(%i!<$,=P$^$9e(B.
newe$B$NBe$o$j$KDL>o$N%a%=%C%I$J$iEvA3%(%i!<$O=P$^$;$se(B.
e$B$3$l$C$Fe(B, e$B%P%0$Je(B
e$B$N$G$7$g$&$+e(B? e$B$=$l$H$b;EMMe(B?
e$B$A$J$_$Ke(B, ruby 1.8, 1.9 e$BN>J}$H$bF1$88=>]$G$9e(B.
__
---------------------------------------------------->> e$B@PDMe(B
e$B7=<ye(B <<—
---------------------------------->> e-mail: [email protected] <<—
e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B
In message “Re: [ruby-dev:30702] new() &block”
on Mon, 9 Apr 2007 22:26:37 +0900, [email protected] (Keiju
ISHITSUKA) writes:
|e$B%P%0$J$N$+;EMM$J$N$+NI$/$o$+$i$J$$$N$G$9$,e(B,
e$B$J$K$,$7$?$$$N$,?dB,$9$k$7$+$J$$$N$G$9$,!"e(B
| def Foo.foo(&block)
| new() &block
| end
e$B$3$NItJ,!"e(B
new() &block
e$B$Oe(B
new() & block
e$B$H$$$&0UL#$G!"$D$^$j!"!Ve(BFoo.newe$B$G?7$7$$e(BFooe$B%%V%8%’%/%H$r:n$j!"e(B
e$B$=$l$Ke(B & e$B1i;;;R$rE,MQ!W$H$$$&0UL#$K$J$j$^$9!#$$=$i$/$Oe(B
new(&block)
e$B$H=q$-$?$+$C$?$N$@;W$$$^$9$,!"$I$&$G$7$g$&!#e(BJavae$B$"$?$j$KFG$5e(B
e$B$l$9$.$?!)e(B
e$B$^$D$b$He(B e$B$f$-$R$me(B /:|)
e$B$1$$$8$e!w$$$7$D$+$G$9e(B.
In [ruby-dev:30703] the message: “[ruby-dev:30703] Re: new() &block”,
on Apr/09 23:45(JST) Yukihiro M. writes:
e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B
new() & block
e$B$H$$$&0UL#$G!"$D$^$j!"!Ve(BFoo.newe$B$G?7$7$$e(BFooe$B%%V%8%’%/%H$r:n$j!"e(B
e$B$=$l$Ke(B & e$B1i;;;R$rE,MQ!W$H$$$&0UL#$K$J$j$^$9!#$$=$i$/$Oe(B
new(&block)
e$B$H=q$-$?$+$C$?$N$@;W$$$^$9$,!"$I$&$G$7$g$&!#e(BJavae$B$"$?$j$KFG$5e(B
e$B$l$9$.$?!)e(B
e$B$$$d!<e(B. e$BC1$J$k4*0c$$$G$9e(B.
foo &block
e$B$@$He(B, e$B%V%m%C%/EO$7$K$J$C$F$$$?$N$Ge(B,
e$B3g8L$N30$KCV$/$b$N$@$H4*0c$$%b!<%Ie(B
e$B$KF~$C$F$$$^$7$?e(B.
e$B$*<j?t$+$1$^$7$?e(B(__;;
__
---------------------------------------------------->> e$B@PDMe(B
e$B7=<ye(B <<—
---------------------------------->> e-mail: [email protected] <<—