package jrummikub.model; import jrummikub.util.Pair; /** * Interface for the {@link Table} model */ public interface ITable extends IStoneTray { /** * Removes {@link Stone} from the Table * * @param stone * stone to pick up * @return the stone sets that are created by taking pickung the the stone */ public Pair pickUpStone(Stone stone); /** * Tests the Table for rule conflicts by checking all the {@link StoneSet} * * @return whether all sets on the table are valid */ public boolean isValid(); /** * Finds the {@link StoneSet} containing the given {@link Stone} * @param stone stone whose set we're searching * @return the set containing the stone or null if no set was found */ StoneSet findStoneSet(Stone stone); }