Sha256: b18c66fd0a4adf03c64b247584af4e35107c9f7a0ae42b79fa96f00d1f5eb599

Contents?: true

Size: 640 Bytes

Versions: 1

Compression:

Stored size: 640 Bytes

Contents

module VDF
	class Generator
	  class << self

	    def generate(object)
	      generate_impl(object, 0)
	    end

	    private

	    def generate_impl(object, level)
	      result = ""
	      indent = -"\t"*level

	      object.each do |key, value|
					if value.respond_to? :each
						result << [indent, -'"', key, -"\"\n", indent, -"{\n", generate_impl(value, level + 1), indent, -"}\n"].join
					else
						result << [indent, -'"', key, -'"', indent, indent, -'"', value.to_s, -"\"\n"].join
					end
	      end

	      result
	    end
	  end
	end

	def generate(object)
		Generator.generate(object)
	end
	module_function :generate
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vdf-1.0.0 lib/vdf/generate.rb