From: Tim Bates Date: 2004-02-08T08:51:19+09:00 Subject: Re: Removing methods from DRbObject Joel VanderWerf wrote: > You might want consider requiring drb/eq, which defines #== and #hash in > terms of the remote reference, rather than object identity. class DRbObject def ==(other) return false unless DRbObject === other (@ref == other.__drbref) && (@uri == other.__drburi) end This doesn't do what I want either. It does some comparison of whether they represent *the same object* on the remote side. In my case, they don't - but the remote objects have a definition of #== that makes them equal. This doesn't solve my problem. By undefining #==, #inspect, #class and so on, you could make a DRbObject appear and behave exactly like the local one. I'm not sure how many of these such methods it is wise to undefine, though - some may be crucial to the way DRb works. Can someone with a knowledge of the internals of DRb please tell me if I'll get into trouble by undefining the wrong methods, and what those methods are? -- Tim Bates tim@bates.id.au