module Sequel::Plugins::Composition::InstanceMethods
Public Instance Methods
before_validation()
click to toggle source
For each composition, set the columns in the model class based on the composition object.
Calls superclass method
# 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
compositions()
click to toggle source
Cache of composition objects for this class.
# File lib/sequel/plugins/composition.rb 168 def compositions 169 @compositions ||= {} 170 end
freeze()
click to toggle source
Freeze compositions hash when freezing model instance.
Calls superclass method
# File lib/sequel/plugins/composition.rb 173 def freeze 174 compositions 175 super 176 compositions.freeze 177 self 178 end
Private Instance Methods
_refresh_set_values(hash)
click to toggle source
Clear the cached compositions when manually refreshing.
Calls superclass method
# File lib/sequel/plugins/composition.rb 191 def _refresh_set_values(hash) 192 @compositions.clear if @compositions 193 super 194 end
initialize_copy(other)
click to toggle source
Duplicate compositions hash when duplicating model instance.
Calls superclass method
# File lib/sequel/plugins/composition.rb 197 def initialize_copy(other) 198 super 199 @compositions = Hash[other.compositions] 200 self 201 end