Sha256: aff3cf6be9c8ad7d3d85856e1539f5686b3e2a37958ff6fc77b8c67222f76caa

Contents?: true

Size: 443 Bytes

Versions: 2

Compression:

Stored size: 443 Bytes

Contents

module TowersOfHanoi
  class Board
    attr_reader :bricks

    def initialize(bricks: 3)
      @bricks = bricks
      @towers = [
        TowersOfHanoi::Board::Tower.new(max_bricks: @bricks, bricks: @bricks),
        TowersOfHanoi::Board::Tower.new(max_bricks: @bricks),
        TowersOfHanoi::Board::Tower.new(max_bricks: @bricks)
      ]
    end

    def tower(position)
      @towers[position - 1] if (1..3) === position
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
towers_of_hanoi-0.2.0 lib/towers_of_hanoi/board.rb
towers_of_hanoi-0.1.0 lib/towers_of_hanoi/board.rb