class Matrixeval::CommandLine

Attributes

argv[R]

Public Class Methods

new(argv) click to toggle source
# File lib/matrixeval/command_line.rb, line 12
def initialize(argv)
  @argv = argv
end

Public Instance Methods

all?() click to toggle source
# File lib/matrixeval/command_line.rb, line 30
def all?
  context_options[:all]
end
context_arguments() click to toggle source
# File lib/matrixeval/command_line.rb, line 38
def context_arguments
  arguments = @argv[0...seperator_index]
  arguments << "-h" if @argv.empty?
  arguments
end
context_options() click to toggle source
# File lib/matrixeval/command_line.rb, line 34
def context_options
  @context_options ||= ParseContextArguments.call(context_arguments)
end
init?() click to toggle source
# File lib/matrixeval/command_line.rb, line 22
def init?
  @argv[0] == 'init'
end
init_options() click to toggle source
# File lib/matrixeval/command_line.rb, line 26
def init_options
  @init_options ||= ParseInitArguments.call(@argv[1..-1])
end
rest_arguments() click to toggle source
# File lib/matrixeval/command_line.rb, line 44
def rest_arguments
  @argv[seperator_index..-1]
end
valid?() click to toggle source
# File lib/matrixeval/command_line.rb, line 16
def valid?
  init? ||
    !context_options.empty? ||
    !seperator_index.nil?
end

Private Instance Methods

seperator_index() click to toggle source
# File lib/matrixeval/command_line.rb, line 50
def seperator_index
  @argv.index do |argument|
    Config.commands.include?(argument)
  end
end