module TTY::Logger::Levels

Constants

DEBUG_LEVEL
ERROR_LEVEL
FATAL_LEVEL
INFO_LEVEL
LEVEL_NAMES
WARN_LEVEL

Public Instance Methods

compare_levels(left, right) click to toggle source

Compares two levels by name or number

@return [Symbol]

either :lt, :gt or :eq

@api private

# File lib/tty/logger/levels.rb, line 58
def compare_levels(left, right)
  left = left.is_a?(Integer) ? left : level_to_number(left)
  right = right.is_a?(Integer) ? right : level_to_number(right)

  return :eq if left == right

  left < right ? :lt : :gt
end
level_names() click to toggle source

All the default level names

@return [Array]

@api private

# File lib/tty/logger/levels.rb, line 25
def level_names
  LEVEL_NAMES.keys
end
level_to_number(level) click to toggle source

Convert level name to level number

@param [Symbol] level

@return [Integer]

@api private

# File lib/tty/logger/levels.rb, line 36
def level_to_number(level)
  LEVEL_NAMES[level.to_s.downcase.to_sym] ||
    raise(ArgumentError, "Invalid level #{level.inspect}")
end
number_to_level(number) click to toggle source

Convert level number to level name

@param [Integer] number

@return [Symbol]

@api private

# File lib/tty/logger/levels.rb, line 48
def number_to_level(number)
  LEVEL_NAMES.key(number)
end