On Tue, 14 Feb 2006, konsu wrote: > hello, > > is there a way to inspect an object only to a given depth to avoid infinite > loops in case of referential loops? like irb does: > > irb(main):001:0> a = Object.new > => #<Object:0x2be6cd0> > irb(main):002:0> b = Object.new > => #<Object:0x2be4900> > irb(main):003:0> a.instance_variable_set(:@b, b) > => #<Object:0x2be4900> > irb(main):004:0> b.instance_variable_set(:@a, a) > => #<Object:0x2be6cd0 @b=#<Object:0x2be4900 @a=#<Object:0x2be6cd0 ...>>> > irb(main):005:0> a.inspect > => "#<Object:0x2be6cd0 @b=#<Object:0x2be4900 @a=#<Object:0x2be6cd0 ...>>>" > irb(main):006:0> > > thanks > konstantin harp:~ > cat a.rb a = Object.new b = Object.new a.instance_variable_set(:@b, b) b.instance_variable_set(:@a, a) p a require "yaml" and y a require "pp" and pp a harp:~ > ruby a.rb #<Object:0xb75cdc64 @b=#<Object:0xb75cdc50 @a=#<Object:0xb75cdc64 ...>>> --- &id001 !ruby/object b: !ruby/object a: *id001 #<Object:0xb75cdc64 @b=#<Object:0xb75cdc50 @a=#<Object:0xb75cdc64 ...>>> hth. -a -- judge your success by what you had to give up in order to get it. - h.h. the 14th dali lama