Class: RegoValidate::ErrorReporter::JsonFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby/rego/cli.rb

Overview

Emits JSON-formatted error output.

Instance Method Summary collapse

Constructor Details

#initialize(stdout:, stderr:) ⇒ JsonFormatter

Returns a new instance of JsonFormatter.

Parameters:

  • stdout (IO)
  • stderr (IO)


1037
1038
1039
1040
# File 'lib/ruby/rego/cli.rb', line 1037

def initialize(stdout:, stderr:)
  @stdout = stdout
  @stderr = stderr
end

Instance Method Details

#error(message, _parser = nil) ⇒ void

This method returns an undefined value.

Parameters:

  • message (String)
  • parser (OptionParser, nil)


1045
1046
1047
1048
# File 'lib/ruby/rego/cli.rb', line 1045

def error(message, _parser = nil)
  payload = ErrorPayload.from_cli_error(message).to_h
  stdout.puts(JSON.generate(payload))
end

#rego_error(error) ⇒ void

This method returns an undefined value.

Parameters:



1052
1053
1054
1055
# File 'lib/ruby/rego/cli.rb', line 1052

def rego_error(error)
  payload = ErrorPayload.from_rego_error(error).to_h
  stdout.puts(JSON.generate(payload))
end