Sha256: 21d3a52d4a5cd5d7af264644d19846fda8f3957dd69ea033c1ffbfb2733eed07
Contents?: true
Size: 774 Bytes
Versions: 35
Compression:
Stored size: 774 Bytes
Contents
module Aptible module CLI module Formatter class Object < Node attr_reader :children def initialize @children = {} end def value(k, v) assign_child(k, Value.new(v)) {} end def object(k, &block) assign_child(k, Object.new, &block) end def keyed_object(k, object_key, &block) assign_child(k, KeyedObject.new(object_key), &block) end def list(k, &block) assign_child(k, List.new, &block) end private def assign_child(k, node) raise "Overwriting keys (#{k}) is not allowed" if @children[k] yield node @children[k] = node nil end end end end end
Version data entries
35 entries across 35 versions & 1 rubygems