Module: StateMachineEnum

Extended by:
ActiveSupport::Concern
Defined in:
lib/state_machine_enum.rb,
lib/state_machine_enum/version.rb

Overview

This concern adds a method called “state_machine_enum” useful for defining an enum using string values along with valid state transitions. Validations will be added for the state transitions and a proper enum is going to be defined. For example:

state_machine_enum :state do |states|
  states.permit_transition(:created, :approved_pending_settlement)
  states.permit_transition(:approved_pending_settlement, :rejected)
  states.permit_transition(:created, :rejected)
  states.permit_transition(:approved_pending_settlement, :settled)
end

Defined Under Namespace

Classes: InvalidState, InvalidTransition, StatesCollector

Constant Summary collapse

VERSION =
"0.1.4"