class Zapata::Primitive::Hash

Public Instance Methods

node() click to toggle source
# File lib/zapata/primitive/hash.rb, line 6
def node
  body = @code
  type = @code.type
  OpenStruct.new(type: type, body: body)
end
to_a() click to toggle source
# File lib/zapata/primitive/hash.rb, line 12
def to_a
  value.to_a.flatten
end
to_raw() click to toggle source
# File lib/zapata/primitive/hash.rb, line 16
def to_raw
  result = {}

  node.body.to_a.each do |pair|
    key_node, value_node = pair.to_a
    key = Diver.dive(key_node).to_raw
    value = Diver.dive(value_node).to_raw
    result[key] = value
  end

  Raw.new(:hash, result)
end