Sha256: 079a0317b351f957ba19744a76f8c76324d636b1486172728c620682ef75fce5

Contents?: true

Size: 617 Bytes

Versions: 1

Compression:

Stored size: 617 Bytes

Contents

module StateMachine
  module YARD
    module Handlers
      # Handles and processes #event
      class Event < Base
        handles method_call(:event)

        def process
          if owner.is_a?(StateMachines::Machine)
            handler = self
            statement = self.statement
            names = extract_node_names(statement.parameters(false))

            names.each do |name|
              owner.event(name) do
                # Parse the block
                handler.parse_block(statement.last.last, owner: self)
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
state_machines-yard-0.0.1 lib/state_machines/yard/handlers/event.rb