Module: Julewire::Core::Records::Severity
- Defined in:
- lib/julewire/core/records/severity.rb
Constant Summary collapse
- VALUES =
%i[debug info warn error fatal unknown].freeze
- STRING_VALUES =
VALUES.to_h { [it.name, it] }.freeze
- RANKS =
VALUES.each_with_index.to_h.freeze
- LOGGER_INTEGER_VALUES =
VALUES.each_with_index.to_h.invert.freeze
Class Method Summary collapse
Class Method Details
.normalize(value) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/julewire/core/records/severity.rb', line 14 def normalize(value) case value when Symbol return value if RANKS.key?(value) when String severity = STRING_VALUES[value.downcase] return severity unless severity.nil? when Integer severity = LOGGER_INTEGER_VALUES[value] return severity unless severity.nil? end raise ArgumentError, "unsupported severity: #{value.inspect}" end |
.rank(value) ⇒ Object
29 30 31 |
# File 'lib/julewire/core/records/severity.rb', line 29 def rank(value) RANKS.fetch(normalize(value)) end |