## Uses of Class
edu.wisc.game.sql.Piece.Shape

- Packages that use Piece.Shape
  Package | Description
  --- | ---
  edu.wisc.game.engine | Top-level Game Server code
  edu.wisc.game.rest | The RESTful web API
  edu.wisc.game.sql | Persistent data structures

- - ### Uses of Piece.Shape in edu.wisc.game.engine

    Fields in edu.wisc.game.engine declared as Piece.Shape
    Modifier and Type | Field | Description
    --- | --- | ---
    `Piece.Shape[]` | RuleSet.Atom.`shapes` | If null, there are no shape restrictons; if empty or non-empty array, then either one of the elements must match, or (since GS5) permission may be granted via propertyConditions instead)

    Methods in edu.wisc.game.engine that return types with arguments of type Piece.Shape
    Modifier and Type | Method | Description
    --- | --- | ---
    `HashSet<Piece.Shape>` | RuleSet.`listAllShapes()` | Lists all shapes used in this rule set.

    Methods in edu.wisc.game.engine with parameters of type Piece.Shape
    Modifier and Type | Method | Description
    --- | --- | ---
    `Board` | StalemateTester.`canStalemate​(Piece.Shape[] shapes, Piece.Color[] colors, String[] allImages)` | Is there any board composed of any pieces of the specified colors and shapes on which this rule set will stalemate? As always, we assume that all atoms in the rules are "non-disappearing", i.e.

  - ### Uses of Piece.Shape in edu.wisc.game.rest

    Fields in edu.wisc.game.rest declared as Piece.Shape
    Modifier and Type | Field | Description
    --- | --- | ---
    `Piece.Shape[]` | ParaSet.`shapes` | Will be set as appropriate if specified in the CSV file "colors" column

    Methods in edu.wisc.game.rest that return Piece.Shape
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Piece.Shape[]` | ParaSet.`parseShapes​(String val)` | Parses a semicolon-separated list of shapes.

    Methods in edu.wisc.game.rest with parameters of type Piece.Shape
    Modifier and Type | Method | Description
    --- | --- | ---
    `static File` | Files.`getSvgFile​(Piece.Shape shape)` |

  - ### Uses of Piece.Shape in edu.wisc.game.sql

    Fields in edu.wisc.game.sql declared as Piece.Shape
    Modifier and Type | Field | Description
    --- | --- | ---
    `static Piece.Shape` | Piece.Shape.`CIRCLE` |
    `static Piece.Shape[]` | Piece.Shape.`legacyShapes` |
    `static Piece.Shape` | Piece.Shape.`SQUARE` |
    `static Piece.Shape` | Piece.Shape.`STAR` |
    `static Piece.Shape` | Piece.Shape.`TRIANGLE` |

    Methods in edu.wisc.game.sql that return Piece.Shape
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Piece.Shape` | Piece.Shape.`findShape​(String s)` | Finds an already existing Shape object with a specified name, or creates a new one
    `static Piece.Shape[]` | Piece.Shape.`findShapes​(String[] v)` |
    `Piece.Shape` | Piece.`xgetShape()` | For use in our application

    Methods in edu.wisc.game.sql that return types with arguments of type Piece.Shape
    Modifier and Type | Method | Description
    --- | --- | ---
    `Collection<Piece.Shape>` | Piece.Shape.`listAllShapes()` | Lists all shapes known to the system so far

    Methods in edu.wisc.game.sql with parameters of type Piece.Shape
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Piece.`setShape​(Piece.Shape x)` | This is how it used by our JsonToJava

    Constructors in edu.wisc.game.sql with parameters of type Piece.Shape
    Constructor | Description
    --- | ---
    `Board​(RandomRG random, edu.wisc.game.sql.PositionMask positionMask, int randomCnt, int nShapes, int nColors, Piece.Shape[] allShapes, Piece.Color[] allColors, boolean crowded)` | The main constructor for a random initial board in GS 2.*.
    `Game​(RandomRG _random, RuleSet _rules, int _randomObjCnt, int _nShapes, int _nColors, Piece.Shape[] _allShapes, Piece.Color[] _allColors)` | A game with shape-and-color objects used as game pieces
    `Game​(RandomRG _random, RuleSet _rules, int _randomObjCnt, Piece.Shape[] _allShapes, Piece.Color[] _allColors)` |
    `Piece​(Piece.Shape _shape, Piece.Color _color, int _x, int _y)` | Creates a traditional (shape+color) game piece placed at a specified location.
    `RandomGameGenerator​(RandomRG _random, File ruleSetFile, int[] _nPiecesRange, int[] _nShapesRange, int[] _nColorsRange, Piece.Shape[] _allShapes, Piece.Color[] _allColors)` |