Sha256: 286dbc8381211e4bb9a6f7d53813c75af6d283e3eb4610ff8c668f53f3ae8bfa

Contents?: true

Size: 557 Bytes

Versions: 1

Compression:

Stored size: 557 Bytes

Contents

# frozen_string_literal: true

require 'adaptive_alias/patches/base'

module AdaptiveAlias
  module Patches
    class ForwardPatch < Base
      def apply!
        AdaptiveAlias.current_patches[[@klass, @old_column, @new_column]] = self
        @klass.alias_attribute(@new_column, @old_column)
        add_hooks!(current_column: @old_column, alias_column: @new_column)
      end

      def remove!
        super
        @klass.remove_alias_attribute(@new_column)
        BackwardPatch.new(@klass, @old_column, @new_column).apply!
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
adaptive_alias-0.0.2 lib/adaptive_alias/patches/forward_patch.rb