## Uses of Class
edu.wisc.game.parser.RuleParseException

- Packages that use RuleParseException
  Package | Description
  --- | ---
  edu.wisc.game.engine | Top-level Game Server code
  edu.wisc.game.parser | Tools for parsing rule set descriptions
  edu.wisc.game.rest | The RESTful web API
  edu.wisc.game.sql | Persistent data structures
  edu.wisc.game.tools |

- - ### Uses of RuleParseException in edu.wisc.game.engine

    Methods in edu.wisc.game.engine that throw RuleParseException
    Modifier and Type | Method | Description
    --- | --- | ---
    `static GameGenerator` | Captive.`buildGameGenerator​(ParseConfig ht, String[] argv)` | Creates a GameGenerator based on the parameters found in the command line
    `String[]` | AutomaticRuleGenerator.`getColorNames()` |
    `String[]` | AutomaticRuleGenerator.`getShapeNames()` |
    `static void` | AutomaticRuleGenerator.`main​(String[] argv)` |
    `static void` | Captive.`main​(String[] argv)` | A complete CGS session.
    `static void` | ConvertRules.`main​(String[] argv)` | Reads Kevin's file such as Games.21-38.json, and converts it to Game Server rule set files.
    `static void` | RuleSet.`main​(String[] argv)` |
    `static void` | StalemateTester.`main​(String[] argv)` |
    `static RuleSet` | AllRuleSets.`obtain​(String ruleSetName)` |
    `static RuleSet` | AllRuleSets.`read​(File f)` |
    `Vector<String>` | AutomaticRuleGenerator.`varReport()` |

    Constructors in edu.wisc.game.engine that throw RuleParseException
    Constructor | Description
    --- | ---
    `AutomaticRuleGenerator​(Long seed, ParaSet _para)` | Ensures that the para table has the default (legacy) values for "colors" and "shapes", if none are supplied in the CSV file.
    `RuleSet​(String ruleText)` |
    `RuleSet​(String[] rr)` | Creates a RuleSet based on the content of a rule set file.
    `RuleSet​(String[] rr, AutomaticRuleGenerator agen)` |
    `RuleSet​(String ruleText, AutomaticRuleGenerator agen)` |

  - ### Uses of RuleParseException in edu.wisc.game.parser

    Methods in edu.wisc.game.parser that throw RuleParseException
    Modifier and Type | Method | Description
    --- | --- | ---
    `Expression` | Expression.Mapper.`apply​(Expression ex)` |
    `static void` | Token.`main​(String[] argv)` |
    `Expression` | Expression.AdditiveExpression.`map​(Expression.Mapper mapper)` | Applies the mapper to each component
    `Expression.BracketList` | Expression.BracketList.`map​(Expression.Mapper mapper)` | Applies the mapper to each component
    `Expression` | Expression.ColonExpression.`map​(Expression.Mapper mapper)` |
    `Expression` | Expression.ComparisonExpression.`map​(Expression.Mapper mapper)` | Applies the mapper to each component
    `Expression` | Expression.Id.`map​(Expression.Mapper mapper)` |
    `Expression` | Expression.`map​(Expression.Mapper mapper)` |
    `Expression` | Expression.MultiplicativeExpression.`map​(Expression.Mapper mapper)` | Applies the mapper to each component
    `Expression` | Expression.NegationExpression.`map​(Expression.Mapper mapper)` | Applies the mapper to each component
    `Expression` | Expression.Num.`map​(Expression.Mapper mapper)` |
    `Expression.ParenList` | Expression.ParenList.`map​(Expression.Mapper mapper)` | Applies the mapper to each component
    `Expression` | Expression.RangeExpression.`map​(Expression.Mapper mapper)` |
    `Expression` | Expression.Star.`map​(Expression.Mapper mapper)` |
    `static Expression.BracketList` | Expression.`mkBracketList​(Vector<Token> tokens)` |
    `static Expression` | Expression.`mkCounterOrAtom​(Vector<Token> tokens)` | Extracts one of the sections of a rule line: either the leading counter (int or star), or one of the atoms (paren lists that may include arithmetic expressions or stars)
    `static Expression.ArithmeticExpression` | Expression.`mkLongestArithmeticExpression​(Vector<Token> tokens)` | Creates the longest ArithmeticExpression starting at the beginning of the tokens array.
    `static Expression.ArithmeticExpression` | Expression.`mkLongestE1​(Vector<Token> tokens)` | E1 := (E) | Id.Id | Id | Num | -Num | [E,E,...]
    `static Expression.ArithmeticExpression` | Expression.`mkLongestE2​(Vector<Token> tokens)` | E2 := E1 | !E2
    `static Expression.ArithmeticExpression` | Expression.`mkLongestE3​(Vector<Token> tokens)` | E3 := E2 | E2*E2...
    `static Expression.ArithmeticExpression` | Expression.`mkLongestE4​(Vector<Token> tokens)` |
    `static Expression.ArithmeticExpression` | Expression.`mkLongestE5​(Vector<Token> tokens)` |
    `static Expression.RangeExpression` | Expression.`mkRangeExpression​(Vector<Token> tokens)` | If the given sequence of tokens starts with a range expression, extracts it; otherwise, returns null
    `static Vector<Token>` | Token.`tokenize​(String x)` |

    Constructors in edu.wisc.game.parser that throw RuleParseException
    Constructor | Description
    --- | ---
    `Id​(String s)` |

  - ### Uses of RuleParseException in edu.wisc.game.rest

    Methods in edu.wisc.game.rest that throw RuleParseException
    Modifier and Type | Method | Description
    --- | --- | ---
    `static PlayerInfo` | PlayerResponse.`findPlayerInfo​(javax.persistence.EntityManager em, String pid)` | Find the matching record for a player, in the cache of the database.

  - ### Uses of RuleParseException in edu.wisc.game.sql

    Methods in edu.wisc.game.sql that throw RuleParseException
    Modifier and Type | Method | Description
    --- | --- | ---
    `static GameGenerator` | RandomGameGenerator.`buildFromArgv​(RandomRG _random, File f, ParseConfig ht, String[] argv, int ja)` | Builds a RandomGameGenerator from command-line arguments.
    `EpisodeInfo` | PlayerInfo.`episodeToDo()` | Returns the currently unfinished last episode to be resumed, or a new episode (in the current series or the next series, as the case may be), or null if this player has finished with all series.
    `void` | PlayerInfo.`initSeries​(TrialList trialList)` | This is usesd when a player is first registered and a PlayerInfo object is first created.
    `static void` | RandomGameGenerator.`main​(String[] argv)` | Creates a bunch of random boards, from which one can later select those matching some additional criteria, and use them in an experiment plan with predefined boards.
    `static void` | ReplayedEpisode.`main​(String[] argv)` | A unit test, which can be run without relying on SQL, just with files in the transcript and board directories.
    `static GameGenerator` | GameGenerator.`mkGameGenerator​(RandomRG _random, ParaSet para)` | Creates a GameGenerator based on a parameter set.
    `void` | PlayerInfo.`restoreTransientFields()` | This method should be called after restoring the object from the SQL database, in order to re-create some of the necessary non-persistent structures.
    `void` | GameGenerator.`setConditionsFromHT​(ParseConfig ht)` | Sets the constraints if they are specified in the command-line options
    `void` | GameGenerator.`setConditionsFromParaSet​(ParaSet para)` | Sets the constraints if they are specified in the parameter set

    Constructors in edu.wisc.game.sql that throw RuleParseException
    Constructor | Description
    --- | ---
    `RandomGameGenerator​(RandomRG _random, File ruleSetFile, int[] _nPiecesRange, int[] _nShapesRange, int[] _nColorsRange, Piece.Shape[] _allShapes, Piece.Color[] _allColors)` |
    `RandomImageGameGenerator​(RandomRG _random, File ruleSetFile, int[] _nPiecesRange, ImageObject.Generator _imageGenerator)` |

  - ### Uses of RuleParseException in edu.wisc.game.tools

    Methods in edu.wisc.game.tools that throw RuleParseException
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | AnalyzeTranscripts.`analyzePlayerRecord​(String playerId, Vector<EpisodeHandle> v)` | Reads one player's transcript, and prepares a complete report for that player.
    `protected AnalyzeTranscripts.P0andR` | AnalyzeTranscripts.`computeP0andR​(Vector<TranscriptManager.ReadTranscriptData.Entry[]> subsections, ParaSet para, String ruleSetName, Vector<Board> boardHistory)` | Reconstructs and replays the historical episode, computing p0 for every pick or move attempt.
    `protected void` | AnalyzeTranscripts.`saveAnyData​(Vector<TranscriptManager.ReadTranscriptData.Entry[]> section, Vector<EpisodeHandle> includedEpisodes)` | Saves the data for a single (player, ruleSet) pair.
    `protected void` | MwByHuman.`saveAnyData​(Vector<TranscriptManager.ReadTranscriptData.Entry[]> section, Vector<EpisodeHandle> includedEpisodes)` | Saves the data (the summary of a series) for a single (player, ruleSet) pair.