Class: Kommand::Scripts::Arguments

Inherits:
Array
  • Object
show all
Defined in:
lib/kommand/scripts/arguments.rb

Instance Method Summary collapse

Instance Method Details

#arg(key) ⇒ Object



15
16
17
# File 'lib/kommand/scripts/arguments.rb', line 15

def arg(key)
  named.select { |arg| arg.name.to_s == key.to_s }.first
end

#arg?(key) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/kommand/scripts/arguments.rb', line 19

def arg?(key)
  !arg(key).nil?
end

#get(key) ⇒ Object



23
24
25
# File 'lib/kommand/scripts/arguments.rb', line 23

def get(key)
  arg?(key) ? arg(key).value : nil
end

#namedObject



5
6
7
8
# File 'lib/kommand/scripts/arguments.rb', line 5

def named
  args = self.class.new
  args.concat(select { |arg| !arg.unnamed? })
end

#to_helpObject



37
38
39
40
41
# File 'lib/kommand/scripts/arguments.rb', line 37

def to_help
  map do |arg|
    "  #{"%-#{sort { |a,b| a.keys.join(", ").length <=> b.keys.join(", ").length }.last.keys.join(", ").length + 2}s" % arg.keys.join(", ")}# #{arg.summary}"
  end.join("\n")
end

#to_sObject



27
28
29
30
31
32
33
34
35
# File 'lib/kommand/scripts/arguments.rb', line 27

def to_s
  map do |arg|
    #if arg.valid.nil? || arg.valid.empty?
      "[#{arg.keys.join(", ")}]"
    #else
    #  "[#{arg.keys.join(", ")} = (#{arg.valid.join("|")})]"
    #end
  end.join(" ")
end

#unnamedObject



10
11
12
13
# File 'lib/kommand/scripts/arguments.rb', line 10

def unnamed
  args = self.class.new
  args.concat(select { |arg| arg.unnamed? })
end