class Hash

Public Instance Methods

inspect() click to toggle source
# File lib/chef/knife/chop/chef_part.rb, line 58
def inspect
  if size == 0
    '{}'
  else
    a = keys.inject([]) do |a, key|
      k = "#{key}:"
      unless key.match(%r(^[\w]+$))
        if key.match(%r([']))
          q = '"'
        else
          q = "'"
        end
        k = "#{q}#{key}#{q} =>"
      end
      v = fetch(key)
      if v.is_a?(String)
        if v.match(%r('))
          a << "#{k} \"#{v}\""
        else
          a << "#{k} '#{v}'"
        end
      else
        a << "#{k} #{v.to_rb}"
      end
    end
    "{\n #{a.join(",\n")},\n }"
  end
end
to_rb() click to toggle source
# File lib/chef/knife/chop/chef_part.rb, line 55
def to_rb
  self.inspect
end