xibbar$B$3$HF#2,$G$9!#(B ruby -rdelegate -e 'class MyClass<DelegateClass(Array); end;p MyClass.new([]).class' $B$r<B9T$9$k$H!"(B 1.8$B$G$O(BMyClass$B$,JV$k$N$G$9$,!"(B 1.9$B$G$O(BArray$B$,JV$C$F$-$^$9!#(B $B$3$l$O;EMM$G$7$g$&$+!)(B
on 26.08.2008 16:31
on 26.08.2008 16:37
$B$^$D$b$H(B $B$f$-$R$m$G$9(B
In message "Re: [ruby-dev:35986]
1.9$B$H(B1.8$B$G!"(Bdelegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B"
on Tue, 26 Aug 2008 23:26:43 +0900, Fujioka <fuj@rabbix.jp> writes:
|ruby -rdelegate -e 'class MyClass<DelegateClass(Array);
|end;p MyClass.new([]).class'
|$B$r<B9T$9$k$H!"(B
|1.8$B$G$O(BMyClass$B$,JV$k$N$G$9$,!"(B
|1.9$B$G$O(BArray$B$,JV$C$F$-$^$9!#(B
|
|$B$3$l$O;EMM$G$7$g$&$+!)(B
1.8$B$H(B1.9$B$N5sF0$,0c$&$N$O3N$+$G!"$3$l$r;EMM$H$9$k$N$+!"(B1.8$B$N(B
$B5sF0$KLa$9$N$+LB$C$F$$$kCJ3,$G$9!#$J$+$J$+??7u$K9M$($k;~4V$,(B
$B<h$l$J$/$F!#(B
on 26.08.2008 17:49
$B$?$1(B(tk)$B$G$9!#(B [ruby-dev:35987] Re: 1.9$B$H(B1.8$B$G!"(Bdelegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B $B$K$F(B Yukihiro Matsumoto <matz@ruby-lang.org> $B$5$s(B $B[)$/(B: > $B<h$l$J$/$F!#(B goo$B#g(Ble $B$N%-%c%C%7%e$K$3$s$J$N$r8+$D$1$^$7$?!#(B $B4pK\E*$K!"!V(BRuby $B$K$b$C$H8eJ}8_49@-$r!*!W$H$$$&0U8+$K;?@.$G$9!#(B $B!J==J,$K@bF@E*$JM}M3$,$"$l$P(BOK$B!K(B $B!]!]!]!](B http://wannabe.fam.cx/service/2ch_663/read.cgi?tech/1190559748 129 $B!'%G%U%)%k%H$NL>L5$7$5$s!'(B2007/09/25($B2P(B) 01:49:48 $B%P%l$?$+!#@5D>(B >>105 $B$O<:GT$@$C$?!D!#(B $B$=$&$h!"26$O<B$O(B Ruby $B%"%s%A$G$O$J$/8eJ}8_49@-<g5A<T$N9):n0w$@$C$?$N$@!#(B $BBgJ*$rD`$j$"$2$k$H$$$&G$L3$K<:GT$7$?0J>e!"26$O$b$&>C$($k$7$+$J$$!#(B $B$@$,K:$l$k$J!*?M$,8eJ}8_49@-$rK>$`?4$O>C$($k;v$O$J$$!*(B Ruby $B$K$b$C$H8eJ}8_49@-$r!*;W$$IU$-$N(B API $BJQ99H?BP!*(B ---- take_tk = kumagai hidetake
on 26.08.2008 17:51
$B$1$$$8$e!w$$$7$D$+$G$9(B. In [ruby-dev :35987 ] the message: "[ruby-dev:35987] Re: 1.9$B$H(B1.8$B$G!"(B delegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B ", on Aug/26 23:32(JST) Yukihiro Matsumoto writes: >$B$^$D$b$H(B $B$f$-$R$m$G$9(B >|ruby -rdelegate -e 'class MyClass<DelegateClass(Array); >|end;p MyClass.new([]).class' >|$B$r<B9T$9$k$H!"(B >|1.8$B$G$O(BMyClass$B$,JV$k$N$G$9$,!"(B >|1.9$B$G$O(BArray$B$,JV$C$F$-$^$9!#(B >| >|$B$3$l$O;EMM$G$7$g$&$+!)(B >1.8$B$H(B1.9$B$N5sF0$,0c$&$N$O3N$+$G!"$3$l$r;EMM$H$9$k$N$+!"(B1.8$B$N(B >$B5sF0$KLa$9$N$+LB$C$F$$$kCJ3,$G$9!#$J$+$J$+??7u$K9M$($k;~4V$,(B >$B<h$l$J$/$F!#(B $B;d$O:#$N$^$^(B(Ruby1.9$B$N?6$kIq$$(B)$B$GNI$$$H;W$$$^$9(B. $B$b$7$/$O(B, MyClass$B$rJV$7$?$$$J$i(B, * ancestors$B$,(B MyClass<Array<... * kind_of?(MyClass), kind_of?(Array) => true $B$H$J$k$h$&$K$J$C$F$bNI$$$+$b(B. $B$3$l$@$H(B, $B8B$j$J$/(BArray$B$G$"$C$FM_$7$$$H(B $B8@$&$3$H$H(B, MyClass$B$N%$%s%9%?%s%9$G$"$k$3$H$NN><T$,@.$jN)$A$^$9(B. $B$?$@(B, SimpleDelegator$B$O0Q>y@h$,8GDj$G$J$$$N$G(B, $B>e5-$N$h$&$J(Bancestors$B$N(B $B?6$kIq$$$G$-$J$$$N$G(B, obj.class $B$O$d$O$j0Q>y@h$N%/%i%9$rJV$9$7$+$J$$$G(B $B$7$g$&$1$I(B. $B$b$I$C$F(B, $B:#$N$^$^$N>l9g(B, $B85$N%/%i%9$rD4$Y$k(B($BK\Ev$N<+J,$rD4$Y$k(B)$BJ}K!$,(B $B$J$$$N$G(B, $B85$N%/%i%9$rCN$kJ}K!$,$"$C$F$bNI$$$H;W$$$^$9(B. delegetee_class $B$H$+(B? $B$5$i$K(B, $B$D$$$G$K%j%/%(%9%H$7$^$9$,(B, Module#=== $B$N?6$kIq$$$r(B. class Module def ===(other) other.kind_of?(self) end end $B$K$7$^$;$s(B? $B:#$N$^$^$@$H(B, case/when$B$G(B $B%G%l%2!<%H@h$N%/%i%9$r;XDj$G$-$J(B $B$/$FITJX$G$9(B. $B$^$?(B, case/when$B$r;H$C$F$$$F$b%G%l!<%2!<%H@h$N%*%V%8%'%/(B $B%H$H8B$j$J$/F1$8?6$kIq$$$K$G$-$^$9(B. PS. delegator$B$,$i$_$H$$$&$3$H$G(B, [ruby-dev:35977] $B$b$h$m$7$/(B. $BJ,$+$j$E$i$$(B $BI=8=$+$bCN$l$^$;$s$,(B, Ruby1.9$B$N?6$kIq$$$rJQ$($?$i$I$&$G$7$g$&(B? $B$H8@$C(B $B$F$$$^$9(B. __ ---------------------------------------------------->> $B@PDM(B $B7=<y(B <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---
on 27.08.2008 02:29
$BF#2,$G$9!#(B >> $B<h$l$J$/$F!#(B > % ruby -rdelegate -e 'class MyClass<DelegateClass(Array);end; p MyClass.ancestors' $B$N<B9T7k2L$,!"(B 1.8$B$O(B [MyClass, #<Class:0x24090>, Object, Kernel] 1.9$B$O(B [MyClass, #<Class:0x1dd698>, Delegator::MethodDelegation, Object, Kernel, BasicObject] $B$G$9!#(B $B:G=i!"$J$s$@$3$j$c!)$C$F;W$$$^$7$?!#(B $B7Q>5$H6hJL$9$k$?$a$J$N$G$7$g$&$+!)(B ancestors$B$r8+$F$b2?$r(Bdelegate$B$7$F$$$k$+$O(B $BH=JL$G$-$J$$$H$$$&$3$H$G$7$g$&$+!)(B
on 27.08.2008 05:30
$B$1$$$8$e!w$$$7$D$+$G$9(B. In [ruby-dev :35994 ] the message: "[ruby-dev:35994] Re: 1.9$B$H(B1.8$B$G!"(B delegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B ", on Aug/27 09:24(JST) Fujioka writes: >$BF#2,$G$9!#(B >> $B$H$J$k$h$&$K$J$C$F$bNI$$$+$b(B. $B$3$l$@$H(B, $B8B$j$J$/(BArray$B$G$"$C$FM_$7$$$H(B >> $B8@$&$3$H$H(B, MyClass$B$N%$%s%9%?%s%9$G$"$k$3$H$NN><T$,@.$jN)$A$^$9(B. >$B$N<B9T7k2L$,!"(B >1.8$B$O(B >[MyClass, #<Class:0x24090>, Object, Kernel] >1.9$B$O(B >[MyClass, #<Class:0x1dd698>, Delegator::MethodDelegation, > Object, Kernel, BasicObject] >$B$G$9!#(B >$B:G=i!"$J$s$@$3$j$c!)$C$F;W$$$^$7$?!#(B >$B7Q>5$H6hJL$9$k$?$a$J$N$G$7$g$&$+!)(B >ancestors$B$r8+$F$b2?$r(Bdelegate$B$7$F$$$k$+$O(B >$BH=JL$G$-$J$$$H$$$&$3$H$G$7$g$&$+!)(B $B$"$/$^$G$b0Q>y$G$9$N$G(B, $B7Q>5Ns$K$O$$$kI,MW$O$J$$$H;W$$$^$9(B. $B$H$$$&$+(B, $BF~$C$F$$$k$N$OO@M}E*$K$O$*$+$7$$$+$b(B... $B$?$@(B, self.class$B$G85%/%i%9$rJV$9$h$&$K$7$?$$$J$i(B, kind_of$B$H(Bancestors$BEy(B $B$rJQ99$7$F$*$1$P(B, $B$+$J$j$J$j$9$^$7$,$G$-$k$H8@$$$?$+$C$?$N$G$9(B. Delegator$B$H$7$F$O(B, * $B0Q>y@h$H=PMh$k$@$1F1$8?6$kIq$$$r$7$FM_$7$$(B * $B85$N%/%i%9$rCN$j$?$$$H$-$b$"$k$N$G(B, $BCN$kJ}K!$,M_$7$$(B Ruby1.9$B$N(BDelagator$B$O$+$J$j(B, $B:G=i$N>r7o$rK~$?$7$F$$$^$9(B(Module#===$B$d(B [ruby-dev:35977]$B$r>J$$$F(B). $B$"$H$O(B, $B8e<T$rK~$?$;$P$h$$$N$G$O(B? $B$H;W$C$F(B $B$$$^$9(B. $B8e<T$O(B, self.class $B$G85%/%i%9$rJV$9J}K!$b$"$j$^$9$,(B, $BJL$N%a%=%C%I$rMQ(B $B0U$9$k$G$bNI$$$H;W$$$^$9(B. $B$3$N>l9g$O(B, $BEvA3(B, kind_of$B$d(Bancestors$BEy$N?6$k(B $BIq$$$rJQ$($kI,MW$O$J$$$G$9(B. __ ---------------------------------------------------->> $B@PDM(B $B7=<y(B <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---
on 27.08.2008 07:20
$B$^$D$b$H(B $B$f$-$R$m$G$9(B
In message "Re: [ruby-dev:35994] Re:
1.9$B$H(B1.8$B$G!"(Bdelegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B"
on Wed, 27 Aug 2008 09:24:25 +0900, Fujioka <fuj@rabbix.jp> writes:
|% ruby -rdelegate -e 'class MyClass<DelegateClass(Array);end;
|p MyClass.ancestors'
|$B$N<B9T7k2L$,!"(B
|1.8$B$O(B
|[MyClass, #<Class:0x24090>, Object, Kernel]
|1.9$B$O(B
|[MyClass, #<Class:0x1dd698>, Delegator::MethodDelegation,
| Object, Kernel, BasicObject]
|$B$G$9!#(B
|$B:G=i!"$J$s$@$3$j$c!)$C$F;W$$$^$7$?!#(B
$B$D$^$j!"(BDelegateClass$B$,$I$N$/$i$$85$N%/%i%9$K;w$?$b$N$G$"$k(B
$B$Y$-$+!"$H$$$&$b$N$J$N$G$7$g$&!#6hJL$9$kI,MW$,$"$k;~$b$"$k$G(B
$B$7$g$&$7!"$G$-$k$+$.$j6hJL$G$-$J$$J}$,$&$l$7$$$3$H$b$"$k$G$7$g(B
$B$&!#$G!"%G%U%)%k%H$G$O$=$l$J$j$N@~$r$R$+$J$$$H$$$1$J$$$,!"$=(B
$B$l$O4JC1$KH=CG$G$-$k$b$N$G$O$J$$$h$&$J5$$,$7$^$9!#(B
|$B7Q>5$H6hJL$9$k$?$a$J$N$G$7$g$&$+!)(B
$B<j$rH4$$$F$k$@$1$@$H;W$$$^$9!#(B
|ancestors$B$r8+$F$b2?$r(Bdelegate$B$7$F$$$k$+$O(B
|$BH=JL$G$-$J$$$H$$$&$3$H$G$7$g$&$+!)(B
$B$=$&$$$&$3$H$K$J$j$^$9$M!#H=JL$7$?$$$G$9$+$M!#(B
on 27.08.2008 07:33
$BF#2,$G$9!#(B > $B$D$^$j!"(BDelegateClass$B$,$I$N$/$i$$85$N%/%i%9$K;w$?$b$N$G$"$k(B > $B$Y$-$+!"$H$$$&$b$N$J$N$G$7$g$&!#6hJL$9$kI,MW$,$"$k;~$b$"$k$G(B > $B$7$g$&$7!"$G$-$k$+$.$j6hJL$G$-$J$$J}$,$&$l$7$$$3$H$b$"$k$G$7$g(B > $B$&!#$G!"%G%U%)%k%H$G$O$=$l$J$j$N@~$r$R$+$J$$$H$$$1$J$$$,!"$=(B > $B$l$O4JC1$KH=CG$G$-$k$b$N$G$O$J$$$h$&$J5$$,$7$^$9!#(B > $B$J$k$[$I!#(B > |$B7Q>5$H6hJL$9$k$?$a$J$N$G$7$g$&$+!)(B > > $B<j$rH4$$$F$k$@$1$@$H;W$$$^$9!#(B > $B$J$k$[$I!#(B > |ancestors$B$r8+$F$b2?$r(Bdelegate$B$7$F$$$k$+$O(B > |$BH=JL$G$-$J$$$H$$$&$3$H$G$7$g$&$+!)(B > > $B$=$&$$$&$3$H$K$J$j$^$9$M!#H=JL$7$?$$$G$9$+$M!#(B > $B:rF|$O$=$&$G$7$?$,!"<j$r$D$1$F$$$k$b$N$O(B delegate$B$r$d$a$F7Q>5$K$7$F$7$^$C$F(Bnaruse$B$5$s$K<h$j9~$s$G$b$i$C$?$N$G(B $B;d$H$7$F$OLdBj$"$j$^$;$s!#(B # $BL@$i$+$K?F%/%i%9$N%a%=%C%I$r4|BT$7$F$$$k$N$O(B # delegate$B$8$c$J$/$F7Q>5$r;H$&$Y$-$H$$$&$3$H$+$J!#!#(B
on 27.08.2008 07:50
$B$3$s$K$A$O!"$J$+$`$i(B($B$&(B)$B$G$9!#(B
$B$?$V$s@PDM$5$s$H$[$\F1$80U8+$J$s$@$H;W$$$^$9$,(B...
In message "[ruby-dev:35998] Re:
1.9$B$H(B1.8$B$G!"(Bdelegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B"
on Aug.27,2008 12:24:22, <keiju@ishitsuka.com> wrote:
> $B8e<T$O(B, self.class $B$G85%/%i%9$rJV$9J}K!$b$"$j$^$9$,(B, $BJL$N%a%=%C%I$rMQ(B
> $B0U$9$k$G$bNI$$$H;W$$$^$9(B. $B$3$N>l9g$O(B, $BEvA3(B, kind_of$B$d(Bancestors$BEy$N?6$k(B
> $BIq$$$rJQ$($kI,MW$O$J$$$G$9(B.
$B$A$g$C$H$3$3$,$h$/$o$+$j$^$;$s$G$7$?!#(B
* self.class$B$G85%/%i%9$rJV$9>l9g(B
$B"*(B
kind_of$B$d(Bancestors$B$r$$$8$i$J$/$F$b!"07$&B&$O$^$k$G85%/(B
$B%i%9$=$N$b$N$G$"$k$+$N$h$&$K07$($k!#(B
* self.class$B$G<+%/%i%9$rJV$9>l9g(B
$B"*(B
$B$b$77Q>5$5$l$F$$$k$+$N$h$&$K07$$$?$$$J$i$P!"(Bkind_of$B$d(B
ancestors$B$r$$$8$kI,MW$,$"$k!#(B
$B$^$?!"JLES!"85%/%i%9$r<hF@$9$k%a%=%C%I$rMQ0U$9$kI,MW$b(B
$B$"$k$@$m$&!#(B
$B$H!"$$$&0UL#$G$$$$$G$7$g$&$+(B?
$B$G!"(BRuby$B$N(BDelegator$B$O$I$&$"$k$Y$-$+!"$G$9$,!";d$O8e<T$G$"$kJ}(B
$B$,$$$$$N$G$O$J$$$+$H;W$$$^$9!#(B
$B7Q>5$N$h$&$K07$$$?$$$J$i7Q>5$r;H$($P$$$$$s$@$7!#(B
Ruby$B$N>l9g$O%@%C%/%?%$%T%s%0$,;H$($^$9$+$i!"7Q>54X78$K$J$/$F(B
$B$bF1L>%a%=%C%I$O8F$S=P$;$k$o$1$G!"85%/%i%9$H%/%i%9L>$,0c$C$?(B
$B$j5<;wE*?F;R4X78$K$J$/$F$bMQ$,B-$j$k>lLL$OB?$$$O$:$G$9$7!"$`(B
$B$7$m$=$&$$$&>lLL$N$?$a$K0Q>y$,;HMQ$5$l$k$Y$-$G$7$g$&!#(B
$B$^$?!"$I$&$7$F$b?F;R4X78$r56Au$7$?$1$l$P!"<+A0$G(Bkind_of$B$d(Bancestors
$B$r$$$8$l$P$=$l$b<B8=2DG=$J$o$1$G!"8e<T$H$7$F$bF($2F;$O;D$5$l(B
$B$k$3$H$K$J$j$^$9!#(B
$B$H$$$&$o$1$G!"(Bclass$B$K4X$7$F$O!"4:$($F(B1.8$B$N5sF0$rJQ99$9$kI,MW(B
$B$O$J$$$H;W$$$^$9!#(B
$B$=$l$G$O!#(B
on 27.08.2008 18:08
$B$1$$$8$e!w$$$7$D$+$G$9(B. In [ruby-dev :36004 ] the message: "[ruby-dev:36004] Re: 1.9$B$H(B1.8$B$G!"(B delegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B ", on Aug/27 14:45(JST) "U.Nakamura" writes: >$B$3$s$K$A$O!"$J$+$`$i(B($B$&(B)$B$G$9!#(B $B$I$b$G$9(B. >$B$?$V$s@PDM$5$s$H$[$\F1$80U8+$J$s$@$H;W$$$^$9$,(B... $B$I$&$J$s$G$7$g$&(B? $B$J$s$+$A$,$&$h$&$J(B? >In message "[ruby-dev:35998] Re: 1.9$B$H(B1.8$B$G!"(Bdelegate$B$N%$%s%9%?%s%9$N(B >$B%/%i%9L>$N0c$&(B" on Aug.27,2008 12:24:22, <keiju@ishitsuka.com> wrote: >> $B8e<T$O(B, self.class $B$G85%/%i%9$rJV$9J}K!$b$"$j$^$9$,(B, $BJL$N%a%=%C%I$r(B >> $BMQ0U$9$k$G$bNI$$$H;W$$$^$9(B. $B$3$N>l9g$O(B, $BEvA3(B, kind_of$B$d(Bancestors$BEy(B >> $B$N?6$kIq$$$rJQ$($kI,MW$O$J$$$G$9(B. >$B$A$g$C$H$3$3$,$h$/$o$+$j$^$;$s$G$7$?!#(B $BJ,$+$j$E$i$/$F?=$7Lu$J$$(B. > * self.class$B$G85%/%i%9$rJV$9>l9g(B > $B"*(B kind_of$B$d(Bancestors$B$r$$$8$i$J$/$F$b!"07$&B&$O$^$k$G85%/(B > $B%i%9$=$N$b$N$G$"$k$+$N$h$&$K07$($k!#(B $B$G$9(B. $B$?$@(B, $BJL%a%=%C%IEy$G(B($B30B&$+$i(B)$B6hJL$G$-$k%a%=%C%I$,I,MW$G$7$g$&(B. > * self.class$B$G<+%/%i%9$rJV$9>l9g(B > $B"*(B $B$b$77Q>5$5$l$F$$$k$+$N$h$&$K07$$$?$$$J$i$P!"(Bkind_of$B$d(B > ancestors$B$r$$$8$kI,MW$,$"$k!#(B > $B$^$?!"JLES!"85%/%i%9$r<hF@$9$k%a%=%C%I$rMQ0U$9$kI,MW$b(B > $B$"$k$@$m$&!#(B > >$B$H!"$$$&0UL#$G$$$$$G$7$g$&$+(B? $B>e5-DI2C$r$7$F$$$?$@$1$l$P(B. >$B$G!"(BRuby$B$N(BDelegator$B$O$I$&$"$k$Y$-$+!"$G$9$,!";d$O8e<T$G$"$kJ}(B >$B$,$$$$$N$G$O$J$$$+$H;W$$$^$9!#(B $B;d$OA0<T$G$b8e<T$G$bNI$$$s$G$9$,(B, ``$B"*(B''$B0J9_$r%5%]!<%H$7$F$M(B. $B$C$F$3$H(B $B$G$9(B. >$B7Q>5$N$h$&$K07$$$?$$$J$i7Q>5$r;H$($P$$$$$s$@$7!#(B $B$"!<(B. $B$J$s$+(B. $B$3$N8@MU$rJ9$/$H(B, $B$b$7$+$7$F0c$&$3$H$r<gD%$7$F$$$k(B? $B$C$F(B $B5$$b$7$F$-$^$9(B. $B0Q>y$O(B, $B4V0c$C$?7Q>5$r;H$o$J$$$?$a$K$"$k$N$G(B. ex) $B%o(B $B%1$o$+$i$J$$%/%i%9$r(BArray$B$H$+(BString$B$N%5%V%/%i%9$K$9$kEy(B. >Ruby$B$N>l9g$O%@%C%/%?%$%T%s%0$,;H$($^$9$+$i!"7Q>54X78$K$J$/$F(B >$B$bF1L>%a%=%C%I$O8F$S=P$;$k$o$1$G!"85%/%i%9$H%/%i%9L>$,0c$C$?(B >$B$j5<;wE*?F;R4X78$K$J$/$F$bMQ$,B-$j$k>lLL$OB?$$$O$:$G$9$7!"$`(B >$B$7$m$=$&$$$&>lLL$N$?$a$K0Q>y$,;HMQ$5$l$k$Y$-$G$7$g$&!#(B $B$&!<$s(B. $B$G$b(B, $B$d$C$Q(B, $BF1$8<gD%(B? $BI=8=$+$A$g$C$HHyL/$J$s$G$9$,(B... $B5<;wE*(B $B?F;R4X78$H$OK\Mh$N7Q>5(B(is-a)$B4X78$K$J$$$N$K%5%V%/%i%9$K$7$F$$$k>uBV$r;X(B $B$7$F$$$k$s$G$7$g$&$+$M(B? $B$=$s$J$3$H$7$J$$$?$a$K0Q>y$r;H$($H(B? >$B$^$?!"$I$&$7$F$b?F;R4X78$r56Au$7$?$1$l$P!"<+A0$G(Bkind_of$B$d(Bancestors >$B$r$$$8$l$P$=$l$b<B8=2DG=$J$o$1$G!"8e<T$H$7$F$bF($2F;$O;D$5$l(B >$B$k$3$H$K$J$j$^$9!#(B $B$O$$(B. $B$?$@(B, $BI8=`E:IU%i%$%V%i%j$H$+$r8+$F$bJ,$+$j$^$9$,(B, $B<B:]$K%?%$%W%9(B $B%$%C%A$O;H$o$l$F$$$^$9$N$G(B, Ruby1.8$B?6$kIq$$$K$9$k$J$i:GDc8B$G$b(B kind_of?$B$N=$@5$OM_$7$$$G$9$M(B. >$B$H$$$&$o$1$G!"(Bclass$B$K4X$7$F$O!"4:$($F(B1.8$B$N5sF0$rJQ99$9$kI,MW(B >$B$O$J$$$H;W$$$^$9!#(B $B$?$@(B, $B5U$K$*J9$-$7$?$$$G$9$,(B, Ruby1.9$B$N?6$kIq$$$G:$$k$3$H$"$j$^$9(B? Ruby1.9$B$NJ}$,(B, $B$h$j40`z$K?6$kIq$$$,F1$8$K$J$k$N$G(B ''(Ruby1.8$B$N(B)$B0Q>y$@$HF0:n$7$J$$$N$G7Q>5$r;H$*$&(B'' $B$J$I$H(B, $BK\Mh$"$k$Y$-$G$J$$7Q>5$r;H$&M}M3$K$5$l$?$j$9$k2DG=@-$O>/$J$/$J(B $B$j$^$9(B. $B$G$9$N$G(B, Ruby1.9$B$N?6$kIq$$$K$7$F(B, $B85$N?6$kIq$$$K$7$?$$$J$i:FDj5A$9$k(B $B$H$$$&$[$&$,$U$5$o$7$$5$$,$7$F$-$F$$$^$9(B. PS. $B$"$H(B, $B?6$kIq$$$OJL$K$7$F(B, $B<BAu$O(BRuby1.9$B$NJ}$,C1=c$GNI$$$H;W$$$^$9(B. __ ---------------------------------------------------->> $B@PDM(B $B7=<y(B <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---
on 27.08.2008 18:49
$B$3$s$K$A$O!"$J$+$`$i(B($B$&(B)$B$G$9!#(B
In message "[ruby-dev:36021] Re:
1.9$B$H(B1.8$B$G!"(Bdelegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B"
on Aug.28,2008 01:02:58, <keiju@ishitsuka.com> wrote:
> > * self.class$B$G85%/%i%9$rJV$9>l9g(B
> > $B"*(B kind_of$B$d(Bancestors$B$r$$$8$i$J$/$F$b!"07$&B&$O$^$k$G85%/(B
> > $B%i%9$=$N$b$N$G$"$k$+$N$h$&$K07$($k!#(B
>
> $B$G$9(B. $B$?$@(B, $BJL%a%=%C%IEy$G(B($B30B&$+$i(B)$B6hJL$G$-$k%a%=%C%I$,I,MW$G$7$g$&(B.
$BEvA3I,MW$@$m$&$J$"$H;W$C$?$N$G$9$,!"85$N@PDM$5$s$N<gD%$K$OL@(B
$B5-$5$l$F$$$J$$$h$&$KFI$a$?$N$G>JN,$7$?$N$G$7$?!#(B
> > * self.class$B$G<+%/%i%9$rJV$9>l9g(B
> > $B"*(B $B$b$77Q>5$5$l$F$$$k$+$N$h$&$K07$$$?$$$J$i$P!"(Bkind_of$B$d(B
> > ancestors$B$r$$$8$kI,MW$,$"$k!#(B
> > $B$^$?!"JLES!"85%/%i%9$r<hF@$9$k%a%=%C%I$rMQ0U$9$kI,MW$b(B
> > $B$"$k$@$m$&!#(B
> >
> >$B$H!"$$$&0UL#$G$$$$$G$7$g$&$+(B?
>
> $B>e5-DI2C$r$7$F$$$?$@$1$l$P(B.
$B$H$$$&$o$1$G!"$3$3$^$GM}2r$O(BOK$B$@$H;W$$$^$9!#(B
> >$B$G!"(BRuby$B$N(BDelegator$B$O$I$&$"$k$Y$-$+!"$G$9$,!";d$O8e<T$G$"$kJ}(B
> >$B$,$$$$$N$G$O$J$$$+$H;W$$$^$9!#(B
>
> $B;d$OA0<T$G$b8e<T$G$bNI$$$s$G$9$,(B, ``$B"*(B''$B0J9_$r%5%]!<%H$7$F$M(B. $B$C$F$3$H(B
> $B$G$9(B.
$BA0<T$b8e<T$b$I$A$i$b;EMM$H$7$F$"$j$($k!"$H$O;W$$$^$9!#(B
>
> $B$&!<$s(B. $B$G$b(B, $B$d$C$Q(B, $BF1$8<gD%(B? $BI=8=$+$A$g$C$HHyL/$J$s$G$9$,(B... $B5<;wE*(B
> $B?F;R4X78$H$OK\Mh$N7Q>5(B(is-a)$B4X78$K$J$$$N$K%5%V%/%i%9$K$7$F$$$k>uBV$r;X(B
> $B$7$F$$$k$s$G$7$g$&$+$M(B? $B$=$s$J$3$H$7$J$$$?$a$K0Q>y$r;H$($H(B?
$BF1$8<gD%$J$N$+$J$s$+IT0B$K$J$C$F$-$^$7$?$,!"8@$$$?$$$3$H$O$=(B
$B$&$$$&$3$H$G$9!#(B
$B@5$7$$7Q>5$H$O$J$s$>$d!"$H$$$&OC$O@PDM$5$s$K$7$F$$$?$@$$$?J}(B
$B$,$$$$$H;W$&$N$G;d$,=q$$$A$c$&$H<a2`$K@bK!$J$o$1$G$9$,(B ^^;$B!"(B
$BHF2=(B<->$BFC2=$N4X78$K$"$k%/%i%9F1;N$r7k$S$D$1$k$N$,@5$7$$7Q>5$J(B
$B$N$@$m$&$H;d$OM}2r$7$F$$$^$9!#(B
$B$G!"7Q>5$r;H$o$:$K0Q>y$r;H$&$H$$$&$N$O!"K\Mh$O0Q>y85$H0Q>y@h(B
$B$O7Q>54X78$K$J$$$+$i0Q>y$r;H$C$F$$$k$O$:$J$o$1$G$9!#(B
$B$K$b$+$+$o$i$:!"(BRuby$B$G0Q>y$r;H$&$HI=LLE*$K$O7Q>54X78$K$"$k$+(B
$B$N$h$&$K8+$($F$7$^$&$N$O$h$m$7$/$J$$$N$G$O$J$$$+!"$H9M$($F$$(B
$B$^$9!#(B
> $B$?$@(B, $B5U$K$*J9$-$7$?$$$G$9$,(B, Ruby1.9$B$N?6$kIq$$$G:$$k$3$H$"$j$^$9(B?
... $B:$$i$J$$$+$b(B ^^;;
> Ruby1.9$B$NJ}$,(B, $B$h$j40`z$K?6$kIq$$$,F1$8$K$J$k$N$G(B
>
> ''(Ruby1.8$B$N(B)$B0Q>y$@$HF0:n$7$J$$$N$G7Q>5$r;H$*$&(B''
>
> $B$J$I$H(B, $BK\Mh$"$k$Y$-$G$J$$7Q>5$r;H$&M}M3$K$5$l$?$j$9$k2DG=@-$O>/$J$/$J(B
> $B$j$^$9(B.
$B$I$C$A$+$H$$$&$H!"(B
$B$"!"(Bkind_of?$B$G8+$F$?$i7Q>5$8$c$J$/$F0Q>y$r;H$o$l$F$$$?$+$i(B
$BF0$+$J$+$C$?$h!#(B
$B$3$3$O(Brespond_to?$B$G%a%=%C%I$r8F$Y$k$+%A%'%C%/$9$Y$-$@$C$?$s(B
$B$@$J$"!#(B
$B$H$$$&J}8~$K9T$/$3$H$r4|BT$7$?$$$N$G$9$,!"%@%a$G$9$+$M!#(B
> PS.
> $B$"$H(B, $B?6$kIq$$$OJL$K$7$F(B, $B<BAu$O(BRuby1.9$B$NJ}$,C1=c$GNI$$$H;W$$$^$9(B.
$B$3$l$OF10U$7$^$9!#(B
$B$=$l$G$O!#(B
on 30.08.2008 16:04
$B;38}$H?=$7$^$9!#(B DelegateClass$B$N?6Iq$$$,Aa$/3NDj$9$k$H0B?4$G$-$F$$$$$J$!!"(B $B$H;W$&$N$G5$IU$$$?E@$r=q$+$;$FD:$-$^$9!#(B 2008/8/28 $B@PDM7=<y(B <keiju@ishitsuka.com>: > $B$1$$$8$e!w$$$7$D$+$G$9(B. >>$B$H$$$&$o$1$G!"(Bclass$B$K4X$7$F$O!"4:$($F(B1.8$B$N5sF0$rJQ99$9$kI,MW(B >>$B$O$J$$$H;W$$$^$9!#(B > > $B$?$@(B, $B5U$K$*J9$-$7$?$$$G$9$,(B, Ruby1.9$B$N?6$kIq$$$G:$$k$3$H$"$j$^$9(B? $BD>$;$P$$$$$@$1$N$3$H$+$bCN$l$^$;$s$N$G(B $B!V:$$k$3$H!W$KD>@\3:Ev$9$k$+$OJ,$+$j$^$;$s$,!"(B $B8=>u$N(B 1.9 $B$N?6Iq$$$N$^$.$i$o$7$$E@$r;0E@5s$2$F$*$-$^$9!#(B 1. Module#=== $B$3$l$O4{$K@PDM$5$s$,5s$2$i$l$^$7$?DL$j$K!"(B case$BJ8$K$*$$$FLdBj$H$J$j$^$9!#(B require "delegate" class A; end DA = DelegateClass(A) da = DA.new(A.new) da.class #=> A case da when A ; A when DA; DA end #=> DA 2. ObjectSpace.each_object $B0J2<$N$h$&$K(B ObjectSpace.each_object $B$,(B $BJ6$i$o$7$$$3$H$K$J$j$^$9!#(B require "delegate" class A; end class DA < DelegateClass(A) def hello; "world"; end end da = DA.new(A.new) da.class #=> A ObjectSpace.each_object(DA) do |obj| obj.hello #=> "world" end ObjectSpace.each_object(A) do |obj| obj.hello #=> undefined method `hello' end da.class $B$O(B A $B$rJV$9$N$K!"(BObjectSpace $B$G%*%V%8%'%/%H$r(B $B<h$j=P$9;~$K$O%/%i%9(B DA $B$r;XDj$7$J$1$l$P$J$j$^$;$s!#(B 3. UnboundMethod#bind $B%(%i!<%a%C%;!<%8$,$d$d$3$7$$$3$H$K$J$j$^$9!#(B require "delegate" class A def hello; "world"; end end DA = DelegateClass(A) da = DA.new(A.new) da.kind_of?(A) #=> true da.instance_of?(A) #=> true m = A.instance_method(:hello) m.bind(da) #=> bind argument must be an instance of A (TypeError) $B0J>e$K5s$2$?;0E@$O4pK\E*$K(B C $B$G(B rb_obj_is_kind_of $B$r(B $B8F$S=P$7$F$$$k$?$a$K5/$-$k8=>]$G$"$k$H;W$$$^$9!#(B DelegateClass $B$rMQ$$$F(B #kind_of? $B$r0Q>y$7$?$H$7$F$b(B $B$3$&$7$?$b$N$K4X$7$F$O$I$&$7$F$bL5NO$G$9$N$G!"(B $B3HD%%i%$%V%i%j$K$*$$$F$bF1MM$KLdBj$K$J$k2DG=@-$,$"$j$^$9!#(B $B=>$C$F$b$7(B 1.9 $B$N:#$N?6Iq$$$N$^$^$K$9$k$N$G$"$l$P(B rb_obj_is_kind_of $B5Z$S(B rb_obj_is_instance_of $B$r(B $B=$@5$7$J$1$l$P$J$i$J$$$N$@$m$&$H;W$$$^$9!#(B $B$^$?F1MM$K$7$F(B rb_obj_class $B$d(B rb_obj_classname $B$K(B $B5/0x$9$k$d$d$^$.$i$o$7$$>u67$,@.N)$9$k2DG=@-$b$"$j$^$9!#(B $B;d$O$3$&$7$?LdBj$,A4LLE*$K2r7h$5$l$k$N$G$"$l$P(B 1.9 $B$N:#$N?6Iq$$$N$^$^$GNI$$$H;W$$$^$9!#(B $B$?$H$($P(B Tempfile $B$NNc$r9M$($l$P!"%$%s%9%?%s%9$,$J$k$Y$/(B File $B$N$h$&$K?6$kIq$&J}$,4r$7$$$N$O3N$+$G$9!#(B $B0lJ}$b$7$3$l$i$,2r7h$5$l$J$$>l9g(B $B$3$&$7$?$^$.$i$o$7$$>lLL$KD>LL$7$F$7$^$&$H!"(B ruby $B$N<BAu$K4X$9$kCN<1$,$J$$$H>u67$NGD0.$,:$Fq$G$9!#(B $B$3$N>l9g(B 1.8 $B$N?6Iq$$$KLa$9$N$,L5Fq$G$"$k$H;W$$$^$9!#(B --- $B;38}7DB@(B
on 02.09.2008 13:39
$B$1$$$8$e!w$$$7$D$+$G$9(B. In [ruby-dev :36024 ] the message: "[ruby-dev:36024] Re: 1.9$B$H(B1.8$B$G!"(B delegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B ", on Aug/28 01:40(JST) "U.Nakamura" writes: >$B$3$s$K$A$O!"$J$+$`$i(B($B$&(B)$B$G$9!#(B $B$I$b$I$b$G$9(B. $BAjJQ$o$i$:$NCY%a%$%k$G?=$7Lu$J$$(B. >$B@5$7$$7Q>5$H$O$J$s$>$d!"$H$$$&OC$O@PDM$5$s$K$7$F$$$?$@$$$?J}(B >$B$,$$$$$H;W$&$N$G;d$,=q$$$A$c$&$H<a2`$K@bK!$J$o$1$G$9$,(B ^^;$B!"(B $B<a2`$K@bK!$@$J$s$F(B, $B;d$OHQG:$N2t$G$9$N$G(B, $B$^$@$^$@$*<a2`MM$K$O$J$l$^$;(B $B$s(B(^^; >$BHF2=(B<->$BFC2=$N4X78$K$"$k%/%i%9F1;N$r7k$S$D$1$k$N$,@5$7$$7Q>5$J(B >$B$N$@$m$&$H;d$OM}2r$7$F$$$^$9!#(B $B$=$&$G$9$M(B. >$B$G!"7Q>5$r;H$o$:$K0Q>y$r;H$&$H$$$&$N$O!"K\Mh$O0Q>y85$H0Q>y@h(B >$B$O7Q>54X78$K$J$$$+$i0Q>y$r;H$C$F$$$k$O$:$J$o$1$G$9!#(B >$B$K$b$+$+$o$i$:!"(BRuby$B$G0Q>y$r;H$&$HI=LLE*$K$O7Q>54X78$K$"$k$+(B >$B$N$h$&$K8+$($F$7$^$&$N$O$h$m$7$/$J$$$N$G$O$J$$$+!"$H9M$($F$$(B >$B$^$9!#(B $B$&!<$s(B. $B$?$7$+$K$=$NDL$j$+$bCN$l$J$$$G$9(B. ($B35G0E*$K$O(B)$B7Q>5$O(B $B0Q>y$N0l<o$G$"$C$F(B, $B0Q>y$O7Q>5$N0l<o$G$O$J$$$G$9$+(B $B$i$M$'(B. > $B$"!"(Bkind_of?$B$G8+$F$?$i7Q>5$8$c$J$/$F0Q>y$r;H$o$l$F$$$?$+$i(B > $BF0$+$J$+$C$?$h!#(B > $B$3$3$O(Brespond_to?$B$G%a%=%C%I$r8F$Y$k$+%A%'%C%/$9$Y$-$@$C$?$s(B > $B$@$J$"!#(B >$B$H$$$&J}8~$K9T$/$3$H$r4|BT$7$?$$$N$G$9$,!"%@%a$G$9$+$M!#(B $B$3$l$,@5$7$$J}8~$+$b(B. ruby$B$C$F%?%$%W%9%$%C%A$r9=J8E*$K%5%]!<%H$7$F$$$k46$8$J$N$G(B, $B$D$$;H$C$F(B $B$7$^$$$,$A$G$9$h$M(B. $B$"$l$C$F$$$&$N$O(B, duck type $BE*$K$O$"$^$j$h$m$7$/$J(B $B$+$C$?$N$+$b$7$l$^$;$s$M$'(B. $B$?$@(B, case obj when Klass $B$H$+(B, kind_of?$B$K$7$F$b(B, $B7Q>54X78$rJ9$$$F$$$k$N$G$O$J$/(B, $B<B$O$^$H$a$F(B resopnd_to?$B$7$?$$>l9g$,B?$$5$$,$9$k$N$G(B, $B$=$l$rH=CG$9$k@lMQ$N%a%=%C%I(B $B$,$"$k$HNI$$$+$b$7$l$^$;$s(B. obj.same_response?(mod) $B$H$+(B, case obj when same_response(mod) .... $B$H$+$M(B. In [ruby-dev :36059 ] the message: "[ruby-dev:36059] Re: 1.9$B$H(B1.8$B$G!"(B delegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B ", on Aug/30 22:58(JST) "Keita Yamaguchi" writes: >$B;38}$H?=$7$^$9!#(B Delegator#class$B$K4X$7$F$O(B 1.8 $B$G$h$$5$$K$J$j$^$7$?$N$G(B, $B$3$A$i$K$O$A$g$C$H$@$1(B. > $B0J>e$K5s$2$?;0E@$O4pK\E*$K(B C $B$G(B rb_obj_is_kind_of $B$r(B > $B8F$S=P$7$F$$$k$?$a$K5/$-$k8=>]$G$"$k$H;W$$$^$9!#(B > DelegateClass $B$rMQ$$$F(B #kind_of? $B$r0Q>y$7$?$H$7$F$b(B > $B$3$&$7$?$b$N$K4X$7$F$O$I$&$7$F$bL5NO$G$9$N$G!"(B > $B3HD%%i%$%V%i%j$K$*$$$F$bF1MM$KLdBj$K$J$k2DG=@-$,$"$j$^$9!#(B $B$=$N$H$*$j$G$9$M(B. delegator$B$N$?$a$KA4ItJQ$($m$H8@$&$N$b8=<BE*$G$J$$$G(B $B$7$g$&$M(B. $B$"$H(B, > $B%(%i!<%a%C%;!<%8$,$d$d$3$7$$$3$H$K$J$j$^$9!#(B $B$K$D$$$F$O(B, $BF10U$9$k$3$H$G(B, DEBUG$B%U%i%0$,$?$C$F$$$k$H$-$O>/$J$/$H$b(B, Delegator#inspect $B$O(B delegator$B$G$"$k$3$H$,J,$+$k$h$&$K$J$C$F$$$kJ}$,NI(B $B$$5$$,$7$^$9(B. $B0J2<$N46$8$G$9(B -- emperor2% ruby-dev -S irb -r lib/delegate.rb irb(main):001:0> SimpleDelegator.new([]) => [] irb(main):002:0> DEBUG=1 => 1 irb(main):003:0> SimpleDelegator.new([]) => #<SimpleDelegator: []> -- $B>!<j$KJQ$($k$o$1$K$b9T$+$J$$$N$G(B, $B0l1~%Q%C%A$r(B: --- lib/delegate.rb ($B%j%S%8%g%s(B 19067) +++ lib/delegate.rb ($B:n6H%3%T!<(B) @@ -117,7 +117,7 @@ class Delegator preserved = [ :__id__, :object_id, :__send__, :public_send, :respond_to?, :send, - :instance_eval, :instance_exec, :extend, + :instance_eval, :instance_exec, :extend, :class, :inspect, ] instance_methods.each do |m| next if preserved.include?(m) @@ -209,6 +209,14 @@ new.__setobj__(__getobj__.dup) new end + + def inspect + if defined?(DEBUG) && DEBUG + "#<#{self.class}: #{self.__getobj__.inspect}>" + else + self.__getobj__.inspect + end + end end include MethodDelegation end __ ---------------------------------------------------->> $B@PDM(B $B7=<y(B <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---
on 02.09.2008 16:42
$B@>;3OB9-$G$9!#(B At Tue, 2 Sep 2008 20:33:41 +0900, $B@PDM7=<y(B wrote: > obj.same_response?(mod) > > $B$H$+(B, > > case obj > when same_response(mod) > .... > > $B$H$+$M(B. Symbol#to_proc$B$H;w$?$h$&$J46$8$G!"(B class Symbol def ===(obj) obj.respond_to?(self) end end $B$H$+(B?
on 03.09.2008 02:33
$B$3$s$K$A$O!"$J$+$`$i(B($B$&(B)$B$G$9!#(B
In message "[ruby-dev:36103] Re:
1.9$B$H(B1.8$B$G!"(Bdelegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B"
on Sep.02,2008 20:33:41, <keiju@ishitsuka.com> wrote:
> $B$+$C$?$N$+$b$7$l$^$;$s$M$'(B.
$B7Q>5$O8@8l;EMM$N0lIt$J$N$KBP$7!"0Q>y$O%i%$%V%i%j$G<B8=$7$F$k(B
$B$N$G!";EJ}$J$$46$8$O$"$j$^$9$,(B...
> $B$?$@(B,
>
> case obj
> when Klass
>
> $B$H$+(B, kind_of?$B$K$7$F$b(B, $B7Q>54X78$rJ9$$$F$$$k$N$G$O$J$/(B, $B<B$O$^$H$a$F(B
> resopnd_to?$B$7$?$$>l9g$,B?$$5$$,$9$k$N$G(B, $B$=$l$rH=CG$9$k@lMQ$N%a%=%C%I(B
> $B$,$"$k$HNI$$$+$b$7$l$^$;$s(B.
$B$=$&$$$($P!"0Q>y$G(Bkind_of?$B$,(Btrue$B$K$J$k$N$O:#$^$G$NM}M3$G5v$7(B
$B$?$/$J$$$N$G$9$,!"(B===$B$O(Btrue$B$K$J$C$F$b5v$;$k5$$,$7$^$9!#(B
$B$G$b!"(B===$B$@$1;H$($k$h$&$K$J$C$F$b!"C1$K:.Mp$9$k$@$1$G4r$7$/$O(B
$B$J$$$G$9$+$M!#(B
> obj.same_response?(mod)
>
> $B$H$+(B,
>
> case obj
> when same_response(mod)
> ....
>
> $B$H$+$M(B.
respond_to?$B$G0z?t$KG[Ns$,<h$l$k$h$&$K$J$k$H!"$^$H$a$FH=Dj$G$-(B
$B$FJXMx!"$H$+!#(B
$B$=$l$G$O!#(B
on 04.09.2008 17:50
$B$1$$$8$e!w$$$7$D$+$G$9(B. In [ruby-dev :36109 ] the message: "[ruby-dev:36109] Re: 1.9$B$H(B1.8$B$G!"(B delegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B ", on Sep/02 23:36(JST) Kazuhiro NISHIYAMA writes: >$B@>;3OB9-$G$9!#(B >Symbol#to_proc$B$H;w$?$h$&$J46$8$G!"(B > >class Symbol > def ===(obj) > obj.respond_to?(self) > end >end > >$B$H$+(B? $B$$$d(B, $B$3$l$O(B... $B%7%s%\%k$G$N%9%$%C%A$,$G$-$J$/$J$k$N$G(B, $B$&$l$7$/$J$$$G$7$g$&(B(^^; In [ruby-dev :36113 ] the message: "[ruby-dev:36113] Re: 1.9$B$H(B1.8$B$G!"(B delegate$B$N%$%s%9%?%s%9$N%/%i%9L>$N0c$&(B ", on Sep/03 09:27(JST) "U.Nakamura" writes: >$B$3$s$K$A$O!"$J$+$`$i(B($B$&(B)$B$G$9!#(B $B$I$b$G$9(B. >$B7Q>5$O8@8l;EMM$N0lIt$J$N$KBP$7!"0Q>y$O%i%$%V%i%j$G<B8=$7$F$k(B >$B$N$G!";EJ}$J$$46$8$O$"$j$^$9$,(B... $B$$$d(B, $B7Q>5$7$F$$$k$+$i$C$F(B, case/when $B$GBP1~$9$k$3$H$b$J$+$C$?$+$b(B. >$B$=$&$$$($P!"0Q>y$G(Bkind_of?$B$,(Btrue$B$K$J$k$N$O:#$^$G$NM}M3$G5v$7(B >$B$?$/$J$$$N$G$9$,!"(B===$B$O(Btrue$B$K$J$C$F$b5v$;$k5$$,$7$^$9!#(B >$B$G$b!"(B===$B$@$1;H$($k$h$&$K$J$C$F$b!"C1$K:.Mp$9$k$@$1$G4r$7$/$O(B >$B$J$$$G$9$+$M!#(B ruby$B$G0Q>y$,$+$J$j0lHLE*$K$J$l$P$=$&$$$&OC$b=P$F$/$k$+$bCN$l$^$;$s$,(B... >respond_to?$B$G0z?t$KG[Ns$,<h$l$k$h$&$K$J$k$H!"$^$H$a$FH=Dj$G$-(B >$B$FJXMx!"$H$+!#(B $B$3$l$O(B, $B7k9=JXMx$+$b(B. $B$"$C$F$bNI$$5$$,$7$^$9$M(B. __ ---------------------------------------------------->> $B@PDM(B $B7=<y(B <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---
on 05.09.2008 16:38
$BF#2,$G$9!#(B
>
class$B$K4X$7$F$O(Bself.class.new$B$H$+$,;H$($J$/$J$k$N$G(B
1.8$B$N5sF0$NJ}$,$$$$$H;W$$$^$9!#(B
1.9$B$N8=>u$N(Bdelegate$B$@$H$3$l$,;H$($J$/$J$C$F$7$^$$$^$9!#(B
$B<+J,<+?H$,2?<T$+$rCN$kJ}K!$,$J$$$H$$$&$N$O(B
$B6l$7$$$+$J$H;W$$$^$9!#(B