Module: Julewire::Core::Diagnostics::InvalidSeverityReporter

Defined in:
lib/julewire/core/diagnostics/invalid_severity_reporter.rb

Class Method Summary collapse

Class Method Details

.call(value) ⇒ Object



37
38
39
# File 'lib/julewire/core/diagnostics/invalid_severity_reporter.rb', line 37

def call(value)
  warning_only.call(value)
end

.counterObject



41
# File 'lib/julewire/core/diagnostics/invalid_severity_reporter.rb', line 41

def counter = RuntimeCounter.new

.metadata(value) ⇒ Object



54
55
56
57
58
# File 'lib/julewire/core/diagnostics/invalid_severity_reporter.rb', line 54

def (value)
  { value_class: value.class.to_s }.freeze
rescue StandardError
  { value_class: "unknown" }.freeze
end

.reset!Object



50
51
52
# File 'lib/julewire/core/diagnostics/invalid_severity_reporter.rb', line 50

def reset!
  @warned.make_false
end

.warn_once(metadata) ⇒ Object



43
44
45
46
47
48
# File 'lib/julewire/core/diagnostics/invalid_severity_reporter.rb', line 43

def warn_once()
  return unless first_warning?

  # Bypass Ruby's verbosity gates; this warning is emitted once.
  Warning.warn("julewire: unsupported record severity #{.fetch(:value_class)}; using :info\n")
end