Class: MetzScan::CLI
- Inherits:
-
Object
- Object
- MetzScan::CLI
- Defined in:
- lib/metz_scan/cli.rb
Constant Summary collapse
- SUBCOMMAND_SUMMARIES =
{ "rules" => "List all Metz/* cops with their one-line rationale", "explain" => "Print full metadata for a single Metz cop", "scan" => "Run rubocop-metz against PATH and render a report", "report" => "Re-render an existing rubocop-metz JSON report", "project-analyzers" => "List project analyzers with status and default-output eligibility" }.freeze
- SUBCOMMANDS =
SUBCOMMAND_SUMMARIES.keys.freeze
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(stdout: $stdout, stderr: $stderr) ⇒ CLI
constructor
A new instance of CLI.
- #run(argv) ⇒ Object
Constructor Details
#initialize(stdout: $stdout, stderr: $stderr) ⇒ CLI
Returns a new instance of CLI.
23 24 25 26 |
# File 'lib/metz_scan/cli.rb', line 23 def initialize(stdout: $stdout, stderr: $stderr) @stdout = stdout @stderr = stderr end |
Class Method Details
.start(argv = ARGV, stdout: $stdout, stderr: $stderr) ⇒ Object
19 20 21 |
# File 'lib/metz_scan/cli.rb', line 19 def self.start(argv = ARGV, stdout: $stdout, stderr: $stderr) new(stdout: stdout, stderr: stderr).run(argv) end |
Instance Method Details
#run(argv) ⇒ Object
28 29 30 31 32 33 |
# File 'lib/metz_scan/cli.rb', line 28 def run(argv) args = argv.dup return show_help_and_fail if args.empty? handle_global_flag(args.first) || dispatch(args) end |