Module: DockerCore::Paser
- Defined in:
- lib/docker_core.rb
Class Method Summary collapse
Class Method Details
.arguments(*items) ⇒ Object
82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
# File 'lib/docker_core.rb', line 82 def self.arguments(*items) list = [] items.each do |item| if item.is_a?(Array) list.concat(item.map { |value| "#{value}" }) next end if item.is_a?(Hash) list.concat(self.(item)) next end list << "#{item}" next end return list end |
.boolean(text) ⇒ Object
45 46 47 |
# File 'lib/docker_core.rb', line 45 def self.boolean(text) return %w[true yes on].include?("#{text}".strip.downcase) end |
.kebab(text) ⇒ Object
50 51 52 |
# File 'lib/docker_core.rb', line 50 def self.kebab(text) return "#{text}".gsub(/_/, '-') end |
.options(hash) ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/docker_core.rb', line 55 def self.(hash) items = [] if hash.is_a?(Hash) hash.each do |key, value| short = 1 == key.length prefix = short ? '-' : '--' separator = short ? ' ' : '=' name = prefix + self.kebab(key) if true == value items << name next end [value].flatten.each do |item| item = "#{item}".gsub(/\\/, '\&\&').gsub('"', '\"') items << %(#{name}#{separator}"#{item}") end next end end return items end |