module Sequel::Plugins::Composition::InstanceMethods

  1. lib/sequel/plugins/composition.rb
Parent: Composition

Methods

Public Instance

  1. before_save
  2. compositions
  3. freeze
  4. set_values

Public Instance methods

before_save ()

For each composition, set the columns in the model class based on the composition object.

[show source]
# File lib/sequel/plugins/composition.rb, line 160
def before_save
  @compositions.keys.each{|n| instance_eval(&model.compositions[n][:decomposer])} if @compositions
  super
end
compositions ()

Cache of composition objects for this class.

[show source]
# File lib/sequel/plugins/composition.rb, line 166
def compositions
  @compositions ||= {}
end
freeze ()

Freeze compositions hash when freezing model instance.

[show source]
# File lib/sequel/plugins/composition.rb, line 171
def freeze
  compositions.freeze
  super
end
set_values (hash)

Clear the cached compositions when setting values.

[show source]
# File lib/sequel/plugins/composition.rb, line 153
def set_values(hash)
  @compositions.clear if @compositions
  super
end