class GrapeOnRails::StructuralHash

Public Instance Methods

each(*args, &block) click to toggle source
# File lib/grape_on_rails/structural_hash.rb, line 16
def each *args, &block
  marshal_dump.each(*args, &block)
end
from_hash(hash) click to toggle source
# File lib/grape_on_rails/structural_hash.rb, line 6
def from_hash hash
  marshal_load __convert(hash)
end
to_hash() click to toggle source
# File lib/grape_on_rails/structural_hash.rb, line 10
def to_hash
  {}.tap do |result|
    marshal_dump.each{|k, v| result[k] = hash_value v}
  end
end

Private Instance Methods

hash_value(value) click to toggle source

rubocop:enable PerceivedComplexity

# File lib/grape_on_rails/structural_hash.rb, line 39
def hash_value value
  if value.instance_of? GrapeOnRails::StructuralHash
    value.to_hash
  elsif v.instance_of? Array
    descend_array(value)
  else
    value
  end
end