Module: Swagger::Attachable
- Included in:
- Schema, SwaggerObject
- Defined in:
- lib/swagger/attachable.rb
Overview
A module that attaches parent objects to their children so you can navigate back up the hierarchy.
Instance Method Summary collapse
- #attach_parent(parent) ⇒ Object private
- #attach_to_children ⇒ Object private
-
#root ⇒ Object
The top-level object in the hierarchy.
Instance Method Details
#attach_parent(parent) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
12 13 14 15 |
# File 'lib/swagger/attachable.rb', line 12 def attach_parent(parent) @parent = parent attach_to_children end |
#attach_to_children ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/swagger/attachable.rb', line 18 def attach_to_children each_value do |v| v.attach_parent self if v.respond_to? :attach_parent if v.respond_to? :each_value v.each_value do |sv| sv.attach_parent self if sv.respond_to? :attach_parent end end next unless v.respond_to? :each v.each do |sv| sv.attach_parent self if sv.respond_to? :attach_parent end end end |
#root ⇒ Object
The top-level object in the hierarchy.
6 7 8 9 |
# File 'lib/swagger/attachable.rb', line 6 def root return self if parent.nil? parent.root end |