
//----------------------------------------------------
// The following code was generated by CUP v0.10k
// Tue May 14 05:05:47 GMT 2019
//----------------------------------------------------

package org.apache.xalan.xsltc.compiler;

/** CUP generated class containing symbol constants. */
public class sym {
  /* terminals */
  public static final int MULT = 26;
  public static final int Literal = 27;
  public static final int GE = 21;
  public static final int NAMESPACE = 49;
  public static final int SLASH = 2;
  public static final int PI = 36;
  public static final int COMMENT = 35;
  public static final int PIPARAM = 37;
  public static final int FOLLOWINGSIBLING = 48;
  public static final int ATSIGN = 12;
  public static final int DSLASH = 15;
  public static final int LPAREN = 7;
  public static final int EXPRESSION = 54;
  public static final int INT = 52;
  public static final int CHILD = 41;
  public static final int MINUS = 23;
  public static final int STAR = 9;
  public static final int DESCENDANTORSELF = 46;
  public static final int RPAREN = 8;
  public static final int AND = 34;
  public static final int LT = 18;
  public static final int OR = 33;
  public static final int COMMA = 10;
  public static final int DDOT = 13;
  public static final int DIV = 24;
  public static final int PLUS = 22;
  public static final int DOT = 3;
  public static final int ID = 29;
  public static final int LE = 20;
  public static final int QNAME = 28;
  public static final int DESCENDANT = 45;
  public static final int PRECEDINGSIBLING = 38;
  public static final int EOF = 0;
  public static final int error = 1;
  public static final int SELF = 39;
  public static final int VBAR = 6;
  public static final int MOD = 25;
  public static final int ANCESTORORSELF = 44;
  public static final int PRECEDING = 50;
  public static final int EQ = 16;
  public static final int PATTERN = 53;
  public static final int LBRACK = 4;
  public static final int REAL = 51;
  public static final int ANCESTOR = 43;
  public static final int RBRACK = 5;
  public static final int DCOLON = 14;
  public static final int DOLLAR = 11;
  public static final int NE = 17;
  public static final int PARENT = 40;
  public static final int FOLLOWING = 47;
  public static final int KEY = 30;
  public static final int TEXT = 31;
  public static final int ATTRIBUTE = 42;
  public static final int GT = 19;
  public static final int NODE = 32;
}

