# File lib/monkey.rb, line 11 def self.invisible(*from) yield rescue Exception => error unless show_invisibles? from << caller.first[/^[^:]*/] if from.empty? from << __FILE__ delete_from_backtrace(error) { |l| from.any? { |f| l.include? f } } end raise error end