module Log::Level

Constants

LevelInfo

Public Instance Methods

add_level(level, &message_formatter) click to toggle source
# File lib/log/level.rb, line 33
def add_level(level, &message_formatter)
  return nil if logger_level?(level)

  Method.define(self, level)

  message_formatter = Log::Format::Defaults.message_formatter unless block_given?

  levels[level] = LevelInfo.new(level, levels.length, message_formatter)
end
assure_level(level) click to toggle source
# File lib/log/level.rb, line 49
def assure_level(level)
  if level.nil?
    return
  end

  unless level == :_none
    if !levels?
      raise Log::Error, "Level \"#{level}\" cannot be set. The logger has no levels defined."
    end

    if !level?(level)
      raise Log::Error, "Level \"#{level}\" must be one of: #{levels.keys.reduce('') { |acc, val| acc << "\"#{val}\", "  }.chomp(', ')}"
    end
  end
end
level() click to toggle source
# File lib/log/level.rb, line 5
def level
  @level
end
Also aliased as: logger_level
level=(level) click to toggle source
# File lib/log/level.rb, line 10
def level=(level)
  if [:_min, :_max].include?(level)
    if level == :_min
      level = min_level
    else
      level = max_level
    end
  end

  assure_level(level)
  @level = level
end
Also aliased as: logger_level=
level?(level=nil) click to toggle source
# File lib/log/level.rb, line 24
def level?(level=nil)
  if level.nil?
    !logger_level.nil?
  else
    levels.has_key?(level)
  end
end
Also aliased as: logger_level?
logger_level()
Alias for: level
logger_level=(level)
Alias for: level=
logger_level?(level=nil)
Alias for: level?
logger_ordinal() click to toggle source
# File lib/log/level.rb, line 77
def logger_ordinal
  ordinal
end
max_level() click to toggle source
# File lib/log/level.rb, line 85
def max_level
  logger_levels.keys.last
end
max_level!() click to toggle source
# File lib/log/level.rb, line 93
def max_level!
  self.logger_level = max_level
end
min_level() click to toggle source
# File lib/log/level.rb, line 89
def min_level
  logger_levels.keys.first
end
min_level!() click to toggle source
# File lib/log/level.rb, line 97
def min_level!
  self.logger_level = min_level
end
no_level!() click to toggle source
# File lib/log/level.rb, line 101
def no_level!
  self.logger_level = nil
end
no_ordinal() click to toggle source
# File lib/log/level.rb, line 81
def no_ordinal
  -1
end
ordinal(level=nil) click to toggle source
# File lib/log/level.rb, line 65
def ordinal(level=nil)
  level ||= logger_level

  if level == :_none
    return -1
  end

  level = levels[level]
  return no_ordinal if level.nil?
  level.ordinal
end
remove_level(level) click to toggle source
# File lib/log/level.rb, line 43
def remove_level(level)
  return nil unless logger_level?(level)
  Method.remove(self, level)
  levels.delete(level)
end