class Undine
Constants
- VERSION
Public Class Methods
configuration()
click to toggle source
# File lib/undine/configuration.rb, line 4 def self.configuration @configuration ||= Configuration.new end
configure() { |configuration| ... }
click to toggle source
# File lib/undine/configuration.rb, line 8 def self.configure yield configuration end
load()
click to toggle source
# File lib/undine.rb, line 9 def self.load at_exit do exception = $ERROR_INFO Undine.process(exception) unless exception.nil? end end
new(configuration)
click to toggle source
# File lib/undine.rb, line 21 def initialize(configuration) @configuration = configuration end
process(exception)
click to toggle source
# File lib/undine.rb, line 17 def self.process(exception) new(Undine.configuration).process(exception) end
Public Instance Methods
process(exception)
click to toggle source
# File lib/undine.rb, line 25 def process(exception) return if ignore?(exception) url = "https://www.google.com/search?q=#{CGI.escape(query_message_from(exception))}" system "open '#{url}'" end
query_message_from(exception)
click to toggle source
# File lib/undine.rb, line 33 def query_message_from(exception) @configuration.query_message_from.call(exception) end
Private Instance Methods
ignore?(exception)
click to toggle source
# File lib/undine.rb, line 39 def ignore?(exception) return false unless @configuration.respond_to?(:except_for) ignored_exceptions = Array(@configuration.except_for) ignored_exceptions.any? { |klass| exception.is_a?(klass) } end