Module Kernel
In: lib/active_support/core_ext/kernel/reporting.rb
lib/active_support/core_ext/kernel/singleton_class.rb
lib/active_support/core_ext/kernel/debugger.rb
lib/active_support/core_ext/kernel/requires.rb

Methods

Public Instance methods

class_eval on an object acts like singleton_class.class_eval.

Starts a debugging session if ruby-debug has been loaded (call rails server —debugger to do load it).

Sets $VERBOSE to true for the duration of the block and back to its original value afterwards.

Require a library with fallback to RubyGems. Warnings during library loading are silenced to increase signal/noise for application warnings.

Silences any stream for the duration of the block.

  silence_stream(STDOUT) do
    puts 'This will never be seen'
  end

  puts 'But this will'

Sets $VERBOSE to nil for the duration of the block and back to its original value afterwards.

  silence_warnings do
    value = noisy_call # no warning voiced
  end

  noisy_call # warning voiced

Returns the object‘s singleton class.

Blocks and ignores any exception passed as argument if raised within the block.

  suppress(ZeroDivisionError) do
    1/0
    puts "This code is NOT reached"
  end

  puts "This code gets executed and nothing related to ZeroDivisionError was seen"

Sets $VERBOSE for the duration of the block and back to its original value afterwards.

[Validate]