| Module | Sequel::Plugins::Composition::InstanceMethods |
| In: |
lib/sequel/plugins/composition.rb
|
For each composition, set the columns in the model class based on the composition object.
# File lib/sequel/plugins/composition.rb, line 160
160: def before_save
161: @compositions.keys.each{|n| instance_eval(&model.compositions[n][:decomposer])} if @compositions
162: super
163: end
Cache of composition objects for this class.
# File lib/sequel/plugins/composition.rb, line 166
166: def compositions
167: @compositions ||= {}
168: end
Freeze compositions hash when freezing model instance.
# File lib/sequel/plugins/composition.rb, line 171
171: def freeze
172: compositions.freeze
173: super
174: end
Clear the cached compositions when setting values.
# File lib/sequel/plugins/composition.rb, line 153
153: def set_values(hash)
154: @compositions.clear if @compositions
155: super
156: end