From: Simon Corcoran Date: 2010-09-29T22:31:21+09:00 Subject: Re: method_missing --001485f6c8a0f74f35049165f875 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Thanks Jes=FAs, the following seems to work class DBI::Row def method_missing(name, *args, &block) return __getobj__.send(name, *args, &block) if __getobj__.respond_to?(name) result =3D by_field(name) end end On Wed, Sep 29, 2010 at 12:38 PM, Simon Corcoran wrote: > ahh interesting - i'll look into that, thanks - my first attempt > at meta-programming so still a lot to learn > > 2010/9/29 Jes=FAs Gabriel y Gal=E1n > > > On Wed, Sep 29, 2010 at 1:22 PM, Simon Corcoran > wrote: > > > Hi, I have extended BDI::Row as below in order to use dot notation to > > > retrieve columns values from result rows. It seems however that some > > methods > > > like inspect for example now get caught as missing by this hook and a= re > > not > > > found and executed as expected. Could anyone shed any light on this > > > behaviour please? > > > > > > class DBI::Row > > > def method_missing(name, *args) > > > puts "method missing #{name}" > > > result =3D by_field(name) > > > end > > > end > > > > > > simon > > > > > > > Are you talking about Ruby/DBI? > > > > > > > http://ruby-dbi.rubyforge.org/git?p=3Druby-dbi.git;a=3Dblob;f=3Dlib/dbi/r= ow.rb;h=3Ddcf40396ee59c6cf36ab9fec937f38f012570e4d;hb=3DHEAD > > > > DBI::Row uses DelegateClass to delegate some of the behaviour to an > > Array. Right now I'm not really sure how DelegateClass works > > underneath, but it seems your overriding of method_missing is messing > > with it. > > > > Sorry, I don't have a solution right now. > > > > Jesus. > > > > > --001485f6c8a0f74f35049165f875--