Class | Exception |
In: |
lib/core/facets/exception/raised.rb
lib/core/facets/exception/detail.rb lib/core/facets/exception/suppress.rb |
Parent: | Object |
Supress errors while executing a block, with execptions.
CREDIT: David Heinemeier Hansson, Thomas Sawyer
# File lib/core/facets/exception/suppress.rb, line 7 7: def self.suppress(*exception_classes) 8: exception_classes.each do |e| 9: unless e < self 10: raise ArgumentError, "exception #{e} not a subclass of #{self}" 11: end 12: end 13: begin yield 14: rescue Exception => e 15: raise unless exception_classes.any? { |cls| e.kind_of?(cls) } 16: end 17: end
Pretty string output of exception/error object useful for helpful debug messages.
Input: The Exception/StandardError object
Output: The pretty printed string
CREDIT: George Moschovitis
# File lib/core/facets/exception/detail.rb, line 14 14: def detail 15: return %{#{message}\n #{backtrace.join("\n ")}\n LOGGED FROM: #{caller[0]}} 16: end