class Drydock::CliFlags
Attributes
flags[R]
Public Class Methods
new(flags = {})
click to toggle source
# File lib/drydock/cli_flags.rb, line 5 def initialize(flags = {}) @flags = flags end
Public Instance Methods
to_s()
click to toggle source
# File lib/drydock/cli_flags.rb, line 9 def to_s return '' if flags.nil? || flags.empty? buffer = StringIO.new flags.each_pair do |k, v| buffer << process_flag(k, v) end buffer.string end
Private Instance Methods
process_flag(key, value)
click to toggle source
# File lib/drydock/cli_flags.rb, line 23 def process_flag(key, value) key = key.to_s if key.size == 1 "-#{key} " else key = key.gsub(/_/, '-') case value when TrueClass "--#{key} " when FalseClass "--no-#{key} " else "--#{key} #{process_value(value)}" end end end
process_value(value)
click to toggle source
# File lib/drydock/cli_flags.rb, line 40 def process_value(value) value = value.to_s value.match(/\s/) ? value.inspect : value end