class Enum::Transitions::Mixin

Public Class Methods

new(config) click to toggle source

@param config [Enum::Transitions::Configuration]

# File lib/enum/transitions/mixin.rb, line 7
def initialize(config)
  @_dependencies = []
  @_enum = config.enum

  included do
    define_callbacks(*config.callbacks.keys)

    config.callbacks.each_pair do |event, callbacks|
      callbacks.each do |kind, block|
        set_callback(event, kind, &block)
      end
    end

    around_update UpdateHandler.new(config), if: :"#{config.enum}_changed?"
  end
end

Public Instance Methods

inspect() click to toggle source
# File lib/enum/transitions/mixin.rb, line 24
def inspect
  "Enum::Transitions::Mixin[#{@_enum}]"
end