# Package edu.wisc.game.parser

# Tools for parsing rule set descriptions

- Interface Summary
  Interface | Description
  --- | ---
  Expression |
  Expression.ArithmeticExpression | An arithmetic expression is composed of variables, constants, and arithmetic operations; parentheses can be used for ordering operations.

- Class Summary
  Class | Description
  --- | ---
  Expression.AdditiveExpression |
  Expression.BracketList |
  Expression.ColonExpression | Id:ArithmeticExpression; used in GS 3
  Expression.EqualityExpression | Has exactly two operands, and the operator is '=='
  Expression.ExList | Can be overridden as needed
  Expression.Id | A variable.
  Expression.MultiplicativeExpression |
  Expression.NegationExpression | !E evaluates to [1] if E is an empty set, or to [] otherwise
  Expression.Num | A numeric constant
  Expression.ParenList |
  Expression.QualifiedId | A.B
  Expression.RangeExpression | [Num..Num]
  Expression.SerialExpression | Additive or multiplicative
  Expression.Star | A Star expression is simply "*".
  Token | A token represents an element of the input text.

- Enum Summary
  Enum | Description
  --- | ---
  Token.Type |

- Exception Summary
  Exception | Description
  --- | ---
  RuleParseException |