Print Exception Class Hieararchy

Platform:  Ruby / Rails
Published  Sep 19, 2005
Updated  Sep 19, 2005
Prints an indented exception class hiearchy. require 'pp'
tree = (cr = lambda {|h,k| h[k] = Hash.new &cr})[{},nil]
ObjectSpace.each_object(Class) {|cl| if cl.ancestors.include? Exception
then cl.ancestors.reverse.inject(tree){|tr,cl| tr[cl]} end}
pp tree

Comments

Sign in to comment.
log2   -  Nov 10, 2005
I think he means what EXACTLY does it do.. not everyone knows what a class hierarchy is
 Respond  
dr_bob   -  Oct 06, 2005
I\'ve described what it is for. Do you mean an explanation how it works?
 Respond  
Hawkee   -  Sep 19, 2005
Thanks for the snippet dr bob, but maybe you can add some layman terms to your description so newbies might know what this is for.
 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.