Class: Fiona7::JSON::ReverseObjDecorator
- Inherits:
-
ObjDecorator
- Object
- ObjDecorator
- Fiona7::JSON::ReverseObjDecorator
- Defined in:
- lib/fiona7/json/reverse_obj_decorator.rb
Instance Method Summary collapse
Methods inherited from ObjDecorator
Constructor Details
This class inherits a constructor from Fiona7::JSON::ObjDecorator
Instance Method Details
#as_json(*args) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/fiona7/json/reverse_obj_decorator.rb', line 6 def as_json(*args) with_types = super() reverse_types = {} with_types.each do |attr, (value, type)| if type.nil? reverse_types[attr] = value else reverse_types[attr] = [type, value] end end if reverse_types[:_widget_pool] && !reverse_types[:_widget_pool].empty? = reverse_types[:_widget_pool].map do |id, values| reversed_values = {} values.each do |attr, (value, type)| if type.nil? reversed_values[attr] = value else reversed_values[attr] = [type, value] end end [id, reversed_values] end reverse_types[:_widget_pool] = Hash[] end reverse_types.as_json(*args) end |