Module: Kettle::Dev::ExecutableVersion

Defined in:
lib/kettle/dev/executable_version.rb

Class Method Summary collapse

Class Method Details

.bare_long_version?(argv, arg, index, value_option:) ⇒ Boolean

Returns:

  • (Boolean)


31
32
33
34
35
36
# File 'lib/kettle/dev/executable_version.rb', line 31

def bare_long_version?(argv, arg, index, value_option:)
  return false unless arg == "--version"
  return true unless value_option

  index == argv.length - 1 || argv[index + 1].to_s.start_with?("-")
end

.header(script_basename) ⇒ Object



21
22
23
# File 'lib/kettle/dev/executable_version.rb', line 21

def header(script_basename)
  "== #{script_basename} v#{Kettle::Dev::Version::VERSION} =="
end


10
11
12
13
14
15
# File 'lib/kettle/dev/executable_version.rb', line 10

def print_and_exit!(script_basename, argv, value_option: false)
  return unless requested?(argv, value_option: value_option)

  puts "#{script_basename} #{Kettle::Dev::Version::VERSION}"
  exit(0)
end


17
18
19
# File 'lib/kettle/dev/executable_version.rb', line 17

def print_header(script_basename)
  puts header(script_basename)
end

.requested?(argv, value_option: false) ⇒ Boolean

Returns:

  • (Boolean)


25
26
27
28
29
# File 'lib/kettle/dev/executable_version.rb', line 25

def requested?(argv, value_option: false)
  argv.each_with_index.any? do |arg, index|
    arg == "-v" || bare_long_version?(argv, arg, index, value_option: value_option)
  end
end