class RfLogger::RailsCompatibility

Constants

Incompatible
MAX
MIN

Attributes

rails_version[R]

Public Class Methods

new(rails_version: Gem::Version.new(::Rails::VERSION::STRING)) click to toggle source
# File lib/rf_logger/rails/rails_compatibility.rb, line 7
def initialize(rails_version: Gem::Version.new(::Rails::VERSION::STRING))
  @rails_version = rails_version
end

Public Instance Methods

call() { || ... } click to toggle source
# File lib/rf_logger/rails/rails_compatibility.rb, line 11
def call
  if rails_supported?
    yield
  else
    rails_not_support_message
  end
end

Private Instance Methods

rails_not_support_message() click to toggle source
# File lib/rf_logger/rails/rails_compatibility.rb, line 23
def rails_not_support_message
  return unless ENV["RF_LOGGER_LOAD_DEBUG"] == "true"
  puts "RfLogger: These patches change Rails private methods and are only known to work for Rails #{MIN} through #{MAX}. Current version #{rails_version}"
end
rails_supported?() click to toggle source
# File lib/rf_logger/rails/rails_compatibility.rb, line 28
def rails_supported?
  rails_version >= Gem::Version.new(MIN) && rails_version <= Gem::Version.new(MAX)
end