Module: Serega::SeregaPlan::InstanceMethods
- Included in:
- Serega::SeregaPlan
- Defined in:
- lib/serega/plan.rb
Overview
SeregaPlan instance methods
Instance Attribute Summary collapse
-
#parent_plan_point ⇒ SeregaPlanPoint?
readonly
Parent plan point.
-
#points ⇒ Array<SeregaPlanPoint>
readonly
Serialization points.
-
#points_hash ⇒ Hash
readonly
Named serialization points.
Instance Method Summary collapse
-
#data_class ⇒ Class
Returns the Data class whose members match this plan's serialized fields.
-
#initialize(parent_plan_point, modifiers) ⇒ SeregaPlan
Instantiate new serialization plan.
-
#serializer_class ⇒ Object
Serializer class of current plan.
Instance Attribute Details
#parent_plan_point ⇒ SeregaPlanPoint? (readonly)
Parent plan point
77 78 79 |
# File 'lib/serega/plan.rb', line 77 def parent_plan_point @parent_plan_point end |
#points ⇒ Array<SeregaPlanPoint> (readonly)
Serialization points
81 82 83 |
# File 'lib/serega/plan.rb', line 81 def points @points end |
#points_hash ⇒ Hash (readonly)
Named serialization points
85 86 87 |
# File 'lib/serega/plan.rb', line 85 def points_hash @points_hash end |
Instance Method Details
#data_class ⇒ Class
Returns the Data class whose members match this plan's serialized fields. Delegates to the class-level cache so identical field sets share one Data class.
119 120 121 |
# File 'lib/serega/plan.rb', line 119 def data_class @data_class ||= self.class.data_class_for(point_names) end |
#initialize(parent_plan_point, modifiers) ⇒ SeregaPlan
Instantiate new serialization plan
Patched by
- depth_limit plugin, which checks depth limit is not exceeded when adding new plan
101 102 103 104 105 |
# File 'lib/serega/plan.rb', line 101 def initialize(parent_plan_point, modifiers) @parent_plan_point = parent_plan_point @points = attributes_points(modifiers) @points_hash = points.to_h { |point| [point.name, point] } end |
#serializer_class ⇒ Object
Serializer class of current plan
110 111 112 |
# File 'lib/serega/plan.rb', line 110 def serializer_class self.class.serializer_class end |