# ITable
Date: 2011-05-10

## jrummikub.model
Interface ITable

All Superinterfaces:
  java.lang.Cloneable, IStoneTray<StoneSet>, java.lang.Iterable<Pair<StoneSet,Position>>

All Known Implementing Classes:
  Table

    public interface ITable

extends IStoneTray<StoneSet>

Interface for the `Table` model

Method Summary
`StoneSet` `findStoneSet(Stone stone)` Finds the `StoneSet` containing the given `Stone`
`boolean` `isValid()` Tests the Table for rule conflicts by checking all the `StoneSet`
`void` `pickUpStone(Stone stone)` Removes `Stone` from the Table

Methods inherited from interface jrummikub.model.IStoneTray
`clone, drop, getPosition, getSize, pickUp`

Methods inherited from interface java.lang.Iterable
`iterator`

Method Detail

### pickUpStone

    void pickUpStone(Stone stone)

  Removes `Stone` from the Table

  Parameters:
    `stone` - stone to pick up

### isValid

    boolean isValid()

  Tests the Table for rule conflicts by checking all the `StoneSet`

  Returns:
    whether all sets on the table are valid

### findStoneSet

    StoneSet findStoneSet(Stone stone)

  Finds the `StoneSet` containing the given `Stone`

  Parameters:
    `stone` - stone whose set we're searching
  Returns:
    the set containing the stone or null if no set was found