Sha256: 70a74aa34248d0e4ee56fa87f90c0d892f74fc17e9a6f617fda643f88dee96d4

Contents?: true

Size: 568 Bytes

Versions: 3

Compression:

Stored size: 568 Bytes

Contents

# frozen string literal: true

require 'dry-initializer'

module SpyAlleyApplication
  module Actions
    class Pass
      include Dry::Initializer.define -> do
        option :get_player_passed_node, type: ::Types::Callable, reader: :private
        option :process_proceeding_to_next_state, type: ::Types::Callable, reader: :private
      end

      def call(game_board:, change_orders:)
        process_proceeding_to_next_state.(
          game_board: game_board,
          change_orders: change_orders.push(get_player_passed_node.()))
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
spy_alley_application-0.3.2 lib/spy_alley_application/actions/pass.rb
spy_alley_application-0.3.1 lib/spy_alley_application/actions/pass.rb
spy_alley_application-0.3.0 lib/spy_alley_application/actions/pass.rb