Method: Attributor::Hash#dump
- Defined in:
- lib/attributor/types/hash.rb
#dump(**opts) ⇒ Object
702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 |
# File 'lib/attributor/types/hash.rb', line 702 def dump(**opts) return CIRCULAR_REFERENCE_MARKER if @dumping @dumping = true contents.each_with_object({}) do |(k, v), hash| k = key_attribute.dump(k, **opts) v = if (attribute_for_value = self.class.keys[k]) attribute_for_value.dump(v, **opts) else value_attribute.dump(v, **opts) end hash[k] = v end ensure @dumping = false end |