class Amoeba::Macros::Base

Public Class Methods

inherited(klass) click to toggle source
# File lib/amoeba/macros/base.rb, line 17
def inherited(klass)
  ::Amoeba::Macros.add(klass)
end
new(cloner) click to toggle source
# File lib/amoeba/macros/base.rb, line 6
def initialize(cloner)
  @cloner     = cloner
  @old_object = cloner.old_object
  @new_object = cloner.new_object
end

Public Instance Methods

follow(_relation_name, _association) click to toggle source
# File lib/amoeba/macros/base.rb, line 12
def follow(_relation_name, _association)
  raise "#{self.class.name} doesn't implement `follow`!"
end
remapped_relation_name(name) click to toggle source
# File lib/amoeba/macros/base.rb, line 22
def remapped_relation_name(name)
  return name unless @cloner.amoeba.remap_method

  @old_object.__send__(@cloner.amoeba.remap_method, name.to_sym) || name
end