Module: Iqvoc::Versioning::ClassMethods

Defined in:
lib/iqvoc/versioning.rb

Instance Method Summary collapse

Instance Method Details

#include_to_deep_cloning(*association_names) ⇒ Object



138
139
140
141
142
143
# File 'lib/iqvoc/versioning.rb', line 138

def include_to_deep_cloning(*association_names)
  (@@include_to_deep_cloning ||= {})[self] ||= []
  association_names.each do |association_name|
    @@include_to_deep_cloning[self] << association_name
  end
end

#includes_to_deep_cloningObject



145
146
147
148
# File 'lib/iqvoc/versioning.rb', line 145

def includes_to_deep_cloning
  (@@include_to_deep_cloning ||= {})[self] ||= []
  (@@include_to_deep_cloning.keys & self.ancestors).map{|c| @@include_to_deep_cloning[c]}.flatten.compact
end