module Sequel::Plugins::Composition::InstanceMethods
Public Instance Methods
Source
# File lib/sequel/plugins/composition.rb 182 def before_validation 183 # decomposer_method is private 184 @compositions.keys.each{|n| send(model.compositions[n][:decomposer_method])} if @compositions 185 super 186 end
For each composition, set the columns in the model class based on the composition object.
Calls superclass method
Source
# File lib/sequel/plugins/composition.rb 168 def compositions 169 @compositions ||= {} 170 end
Cache of composition objects for this class.
Source
# File lib/sequel/plugins/composition.rb 173 def freeze 174 compositions 175 super 176 compositions.freeze 177 self 178 end
Freeze compositions hash when freezing model instance.
Calls superclass method
Private Instance Methods
Source
# File lib/sequel/plugins/composition.rb 191 def _refresh_set_values(hash) 192 @compositions.clear if @compositions 193 super 194 end
Clear the cached compositions when manually refreshing.
Calls superclass method
Source
# File lib/sequel/plugins/composition.rb 197 def initialize_copy(other) 198 super 199 @compositions = Hash[other.compositions] 200 self 201 end
Duplicate compositions hash when duplicating model instance.
Calls superclass method