Class: SkillBench::Services::CompareOptionParser

Inherits:
Object
  • Object
show all
Defined in:
lib/skill_bench/services/compare_option_parser.rb

Overview

Parses CLI options for the compare command.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(argv) ⇒ CompareOptionParser

Returns a new instance of CompareOptionParser.

Parameters:

  • argv (Array<String>)

    Raw CLI arguments



19
20
21
# File 'lib/skill_bench/services/compare_option_parser.rb', line 19

def initialize(argv)
  @argv = argv
end

Class Method Details

.call(argv) ⇒ Hash

Parses the given argv and returns the options hash.

Parameters:

  • argv (Array<String>)

    Raw CLI arguments

Returns:

  • (Hash)

    Parsed options with keys: :variant_a, :variant_b, :eval, :format

Raises:

  • (OptionParser::ParseError)

    when option parsing fails



14
15
16
# File 'lib/skill_bench/services/compare_option_parser.rb', line 14

def self.call(argv)
  new(argv).call
end

Instance Method Details

#callHash

Parses options from argv.

Returns:

  • (Hash)

    Parsed options with keys: :variant_a, :variant_b, :eval, :format

Raises:

  • (OptionParser::ParseError)

    when option parsing fails



27
28
29
30
31
32
# File 'lib/skill_bench/services/compare_option_parser.rb', line 27

def call
  options = { format: :human }
  parser = build_parser(options)
  parser.parse!(@argv)
  options
end