Sha256: 6c0f1051c23bf920a3a272d106fddfed9ab54a4bd57074e67227c2d2c53fdb34

Contents?: true

Size: 524 Bytes

Versions: 3

Compression:

Stored size: 524 Bytes

Contents

# frozen string literal: true

require 'dry-struct'

module SpyAlleyApplication
  module Models
    module GameState
      module VictoryReason
        class ByElimination < Dry::Struct
          @@can_handle_by_elimination = ::Types.Interface(:handle_by_elimination)
          attribute :name, ::Types.Value('by_elimination')

          def accept(visitor, **args)
            @can_handle_by_elimination.(visitor)
            visitor.handle_by_elimination(self, args)
          end
        end
      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/models/game_state/victory_reason/by_elimination.rb
spy_alley_application-0.3.1 lib/spy_alley_application/models/game_state/victory_reason/by_elimination.rb
spy_alley_application-0.3.0 lib/spy_alley_application/models/game_state/victory_reason/by_elimination.rb