Deleting generated files
authorSafey A.Halim <safey.allah@gmail.com>
Fri, 22 Oct 2010 09:59:07 +0000 (09:59 +0000)
committerSafey A.Halim <safey.allah@gmail.com>
Fri, 22 Oct 2010 09:59:07 +0000 (09:59 +0000)
86 files changed:
src/monkey/seaspider/Makefile [new file with mode: 0755]
src/monkey/seaspider/org/gnunet/seaspider/parser/CParserConstants.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/CParserTokenManager.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/ExpressionDatabaseHandler.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/GNUnetDepthFirstVisitor.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/GNUnetParser.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/ParseException.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/SimpleCharStream.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/Token.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/TokenMgrError.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ANDExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AdditiveExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ArgumentExpressionList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Array.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentOperator.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentOrTypeExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/CastExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/CompoundStatement.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ConditionalExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Constant.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ConstantExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/DataType.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EnumSpecifier.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Enumerator.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EnumeratorList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EqualityExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExclusiveORExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Expression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExpressionStatement.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExternalDeclaration.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/FunctionDeclaration.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/FunctionType.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/IdentifierList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InclusiveORExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitDeclarator.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitDeclaratorList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Initializer.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitializerList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/IterationStatement.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/JumpStatement.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LabeledStatement.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LocalVariableDeclaration.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LogicalANDExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LogicalORExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/MultiplicativeExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NoIdentifierTypeSpecifier.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Node.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeChoice.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeListInterface.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeListOptional.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeOptional.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeSequence.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeToken.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ParameterDeclaration.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ParameterList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Pointer.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/PostfixExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/PrimaryExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/RelationalExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/SelectionStatement.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ShiftExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Statement.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StorageClassSpecifier.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructDeclaration.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructDeclarationList.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructOrUnion.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructOrUnionSpecifier.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TranslationUnit.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TypeDeclaration.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TypeSpecifier.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/UnaryExpression.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/UnaryOperator.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/VariableClassSpecifier.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/VariableDeclaration.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/DepthFirstVisitor.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJDepthFirst.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJNoArguDepthFirst.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJNoArguVisitor.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVisitor.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVoidDepthFirst.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVoidVisitor.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/TreeDumper.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/TreeFormatter.java [deleted file]
src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/Visitor.java [deleted file]

diff --git a/src/monkey/seaspider/Makefile b/src/monkey/seaspider/Makefile
new file mode 100755 (executable)
index 0000000..a6a1ffd
--- /dev/null
@@ -0,0 +1,7 @@
+# Script that generates syntax tree and launches SeaSpider for creating GNUnet expression database
+JTB_COMMAND=$(../../../bin/jtb .)
+JAVACC_COMMAND=$(../../../bin/javacc .)
+
+$(JTB_COMMAND)
+$(JAVACC_COMMAND)
\ No newline at end of file
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/CParserConstants.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/CParserConstants.java
deleted file mode 100644 (file)
index 44bd0d4..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-package org.gnunet.seaspider.parser;
-/* Generated By:JavaCC: Do not edit this line. CParserConstants.java */
-
-/**
- * Token literal values and constants.
- * Generated by org.javacc.parser.OtherFilesGen#start()
- */
-public interface CParserConstants {
-
-  /** End of File. */
-  int EOF = 0;
-  /** RegularExpression Id. */
-  int INTEGER_LITERAL = 12;
-  /** RegularExpression Id. */
-  int DECIMAL_LITERAL = 13;
-  /** RegularExpression Id. */
-  int HEX_LITERAL = 14;
-  /** RegularExpression Id. */
-  int OCTAL_LITERAL = 15;
-  /** RegularExpression Id. */
-  int FLOATING_POINT_LITERAL = 16;
-  /** RegularExpression Id. */
-  int EXPONENT = 17;
-  /** RegularExpression Id. */
-  int CHARACTER_LITERAL = 18;
-  /** RegularExpression Id. */
-  int STRING_LITERAL = 19;
-  /** RegularExpression Id. */
-  int CONTINUE = 20;
-  /** RegularExpression Id. */
-  int VOLATILE = 21;
-  /** RegularExpression Id. */
-  int REGISTER = 22;
-  /** RegularExpression Id. */
-  int UNSIGNED = 23;
-  /** RegularExpression Id. */
-  int TYPEDEF = 24;
-  /** RegularExpression Id. */
-  int DFLT = 25;
-  /** RegularExpression Id. */
-  int DOUBLE = 26;
-  /** RegularExpression Id. */
-  int SIZEOF = 27;
-  /** RegularExpression Id. */
-  int SWITCH = 28;
-  /** RegularExpression Id. */
-  int RETURN = 29;
-  /** RegularExpression Id. */
-  int EXTERN = 30;
-  /** RegularExpression Id. */
-  int STRUCT = 31;
-  /** RegularExpression Id. */
-  int STATIC = 32;
-  /** RegularExpression Id. */
-  int SIGNED = 33;
-  /** RegularExpression Id. */
-  int WHILE = 34;
-  /** RegularExpression Id. */
-  int BREAK = 35;
-  /** RegularExpression Id. */
-  int UNION = 36;
-  /** RegularExpression Id. */
-  int CONST = 37;
-  /** RegularExpression Id. */
-  int FLOAT = 38;
-  /** RegularExpression Id. */
-  int SHORT = 39;
-  /** RegularExpression Id. */
-  int ELSE = 40;
-  /** RegularExpression Id. */
-  int CASE = 41;
-  /** RegularExpression Id. */
-  int LONG = 42;
-  /** RegularExpression Id. */
-  int ENUM = 43;
-  /** RegularExpression Id. */
-  int AUTO = 44;
-  /** RegularExpression Id. */
-  int VOID = 45;
-  /** RegularExpression Id. */
-  int CHAR = 46;
-  /** RegularExpression Id. */
-  int GOTO = 47;
-  /** RegularExpression Id. */
-  int FOR = 48;
-  /** RegularExpression Id. */
-  int INT = 49;
-  /** RegularExpression Id. */
-  int IF = 50;
-  /** RegularExpression Id. */
-  int DO = 51;
-  /** RegularExpression Id. */
-  int IDENTIFIER = 52;
-  /** RegularExpression Id. */
-  int LETTER = 53;
-  /** RegularExpression Id. */
-  int DIGIT = 54;
-
-  /** Lexical state. */
-  int DEFAULT = 0;
-  /** Lexical state. */
-  int PREPROCESSOR_OUTPUT = 1;
-
-  /** Literal token values. */
-  String[] tokenImage = {
-    "<EOF>",
-    "\" \"",
-    "\"\\t\"",
-    "\"\\n\"",
-    "\"\\r\"",
-    "<token of kind 5>",
-    "<token of kind 6>",
-    "\"#\"",
-    "\"\\n\"",
-    "\"\\\\\\n\"",
-    "\"\\\\\\r\\n\"",
-    "<token of kind 11>",
-    "<INTEGER_LITERAL>",
-    "<DECIMAL_LITERAL>",
-    "<HEX_LITERAL>",
-    "<OCTAL_LITERAL>",
-    "<FLOATING_POINT_LITERAL>",
-    "<EXPONENT>",
-    "<CHARACTER_LITERAL>",
-    "<STRING_LITERAL>",
-    "\"continue\"",
-    "\"volatile\"",
-    "\"register\"",
-    "\"unsigned\"",
-    "\"typedef\"",
-    "\"default\"",
-    "\"double\"",
-    "\"sizeof\"",
-    "\"switch\"",
-    "\"return\"",
-    "\"extern\"",
-    "\"struct\"",
-    "\"static\"",
-    "\"signed\"",
-    "\"while\"",
-    "\"break\"",
-    "\"union\"",
-    "\"const\"",
-    "\"float\"",
-    "\"short\"",
-    "\"else\"",
-    "\"case\"",
-    "\"long\"",
-    "\"enum\"",
-    "\"auto\"",
-    "\"void\"",
-    "\"char\"",
-    "\"goto\"",
-    "\"for\"",
-    "\"int\"",
-    "\"if\"",
-    "\"do\"",
-    "<IDENTIFIER>",
-    "<LETTER>",
-    "<DIGIT>",
-    "\"(\"",
-    "\")\"",
-    "\";\"",
-    "\"*\"",
-    "\",\"",
-    "\"...\"",
-    "\"{\"",
-    "\"}\"",
-    "\"=\"",
-    "\":\"",
-    "\"[\"",
-    "\"]\"",
-    "\"*=\"",
-    "\"/=\"",
-    "\"%=\"",
-    "\"+=\"",
-    "\"-=\"",
-    "\"<<=\"",
-    "\">>=\"",
-    "\"&=\"",
-    "\"^=\"",
-    "\"|=\"",
-    "\"?\"",
-    "\"||\"",
-    "\"&&\"",
-    "\"|\"",
-    "\"^\"",
-    "\"&\"",
-    "\"==\"",
-    "\"!=\"",
-    "\"<\"",
-    "\">\"",
-    "\"<=\"",
-    "\">=\"",
-    "\"<<\"",
-    "\">>\"",
-    "\"+\"",
-    "\"-\"",
-    "\"/\"",
-    "\"%\"",
-    "\"++\"",
-    "\"--\"",
-    "\"~\"",
-    "\"!\"",
-    "\".\"",
-    "\"->\"",
-  };
-
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/CParserTokenManager.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/CParserTokenManager.java
deleted file mode 100644 (file)
index 41930bf..0000000
+++ /dev/null
@@ -1,1413 +0,0 @@
-package org.gnunet.seaspider.parser;
-/* Generated By:JavaCC: Do not edit this line. CParserTokenManager.java */
-import java.util.*;
-
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.Vector;
-
-/** Token Manager. */
-public class CParserTokenManager implements CParserConstants
-{
-
-  /** Debug output. */
-  public  java.io.PrintStream debugStream = System.out;
-  /** Set debug output. */
-  public  void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
-private final int jjStopStringLiteralDfa_0(int pos, long active0, long active1)
-{
-   switch (pos)
-   {
-      case 0:
-         if ((active1 & 0x20000010L) != 0L)
-            return 65;
-         if ((active0 & 0xffffffff00000L) != 0L)
-         {
-            jjmatchedKind = 52;
-            return 42;
-         }
-         if ((active0 & 0x1000000000000000L) != 0L || (active1 & 0x800000000L) != 0L)
-            return 5;
-         return -1;
-      case 1:
-         if ((active0 & 0xc000004000000L) != 0L)
-            return 42;
-         if ((active0 & 0x3fffffbf00000L) != 0L)
-         {
-            if (jjmatchedPos != 1)
-            {
-               jjmatchedKind = 52;
-               jjmatchedPos = 1;
-            }
-            return 42;
-         }
-         return -1;
-      case 2:
-         if ((active0 & 0xfffffff00000L) != 0L)
-         {
-            jjmatchedKind = 52;
-            jjmatchedPos = 2;
-            return 42;
-         }
-         if ((active0 & 0x3000000000000L) != 0L)
-            return 42;
-         return -1;
-      case 3:
-         if ((active0 & 0xfffff00000L) != 0L)
-         {
-            jjmatchedKind = 52;
-            jjmatchedPos = 3;
-            return 42;
-         }
-         if ((active0 & 0xff0000000000L) != 0L)
-            return 42;
-         return -1;
-      case 4:
-         if ((active0 & 0x3fff00000L) != 0L)
-         {
-            jjmatchedKind = 52;
-            jjmatchedPos = 4;
-            return 42;
-         }
-         if ((active0 & 0xfc00000000L) != 0L)
-            return 42;
-         return -1;
-      case 5:
-         if ((active0 & 0x3fc000000L) != 0L)
-            return 42;
-         if ((active0 & 0x3f00000L) != 0L)
-         {
-            jjmatchedKind = 52;
-            jjmatchedPos = 5;
-            return 42;
-         }
-         return -1;
-      case 6:
-         if ((active0 & 0xf00000L) != 0L)
-         {
-            jjmatchedKind = 52;
-            jjmatchedPos = 6;
-            return 42;
-         }
-         if ((active0 & 0x3000000L) != 0L)
-            return 42;
-         return -1;
-      default :
-         return -1;
-   }
-}
-private final int jjStartNfa_0(int pos, long active0, long active1)
-{
-   return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0, active1), pos + 1);
-}
-private int jjStopAtPos(int pos, int kind)
-{
-   jjmatchedKind = kind;
-   jjmatchedPos = pos;
-   return pos + 1;
-}
-private int jjMoveStringLiteralDfa0_0()
-{
-   switch(curChar)
-   {
-      case 33:
-         jjmatchedKind = 98;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x100000L);
-      case 35:
-         return jjStopAtPos(0, 7);
-      case 37:
-         jjmatchedKind = 94;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x20L);
-      case 38:
-         jjmatchedKind = 82;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x8400L);
-      case 40:
-         return jjStopAtPos(0, 55);
-      case 41:
-         return jjStopAtPos(0, 56);
-      case 42:
-         jjmatchedKind = 58;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x8L);
-      case 43:
-         jjmatchedKind = 91;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x80000040L);
-      case 44:
-         return jjStopAtPos(0, 59);
-      case 45:
-         jjmatchedKind = 92;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x1100000080L);
-      case 46:
-         jjmatchedKind = 99;
-         return jjMoveStringLiteralDfa1_0(0x1000000000000000L, 0x0L);
-      case 47:
-         jjmatchedKind = 93;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x10L);
-      case 58:
-         return jjStopAtPos(0, 64);
-      case 59:
-         return jjStopAtPos(0, 57);
-      case 60:
-         jjmatchedKind = 85;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x2800100L);
-      case 61:
-         jjmatchedKind = 63;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x80000L);
-      case 62:
-         jjmatchedKind = 86;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x5000200L);
-      case 63:
-         return jjStopAtPos(0, 77);
-      case 91:
-         return jjStopAtPos(0, 65);
-      case 93:
-         return jjStopAtPos(0, 66);
-      case 94:
-         jjmatchedKind = 81;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x800L);
-      case 97:
-         return jjMoveStringLiteralDfa1_0(0x100000000000L, 0x0L);
-      case 98:
-         return jjMoveStringLiteralDfa1_0(0x800000000L, 0x0L);
-      case 99:
-         return jjMoveStringLiteralDfa1_0(0x422000100000L, 0x0L);
-      case 100:
-         return jjMoveStringLiteralDfa1_0(0x8000006000000L, 0x0L);
-      case 101:
-         return jjMoveStringLiteralDfa1_0(0x90040000000L, 0x0L);
-      case 102:
-         return jjMoveStringLiteralDfa1_0(0x1004000000000L, 0x0L);
-      case 103:
-         return jjMoveStringLiteralDfa1_0(0x800000000000L, 0x0L);
-      case 105:
-         return jjMoveStringLiteralDfa1_0(0x6000000000000L, 0x0L);
-      case 108:
-         return jjMoveStringLiteralDfa1_0(0x40000000000L, 0x0L);
-      case 114:
-         return jjMoveStringLiteralDfa1_0(0x20400000L, 0x0L);
-      case 115:
-         return jjMoveStringLiteralDfa1_0(0x8398000000L, 0x0L);
-      case 116:
-         return jjMoveStringLiteralDfa1_0(0x1000000L, 0x0L);
-      case 117:
-         return jjMoveStringLiteralDfa1_0(0x1000800000L, 0x0L);
-      case 118:
-         return jjMoveStringLiteralDfa1_0(0x200000200000L, 0x0L);
-      case 119:
-         return jjMoveStringLiteralDfa1_0(0x400000000L, 0x0L);
-      case 123:
-         return jjStopAtPos(0, 61);
-      case 124:
-         jjmatchedKind = 80;
-         return jjMoveStringLiteralDfa1_0(0x0L, 0x5000L);
-      case 125:
-         return jjStopAtPos(0, 62);
-      case 126:
-         return jjStopAtPos(0, 97);
-      default :
-         return jjMoveNfa_0(0, 0);
-   }
-}
-private int jjMoveStringLiteralDfa1_0(long active0, long active1)
-{
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      jjStopStringLiteralDfa_0(0, active0, active1);
-      return 1;
-   }
-   switch(curChar)
-   {
-      case 38:
-         if ((active1 & 0x8000L) != 0L)
-            return jjStopAtPos(1, 79);
-         break;
-      case 43:
-         if ((active1 & 0x80000000L) != 0L)
-            return jjStopAtPos(1, 95);
-         break;
-      case 45:
-         if ((active1 & 0x100000000L) != 0L)
-            return jjStopAtPos(1, 96);
-         break;
-      case 46:
-         return jjMoveStringLiteralDfa2_0(active0, 0x1000000000000000L, active1, 0L);
-      case 60:
-         if ((active1 & 0x2000000L) != 0L)
-         {
-            jjmatchedKind = 89;
-            jjmatchedPos = 1;
-         }
-         return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x100L);
-      case 61:
-         if ((active1 & 0x8L) != 0L)
-            return jjStopAtPos(1, 67);
-         else if ((active1 & 0x10L) != 0L)
-            return jjStopAtPos(1, 68);
-         else if ((active1 & 0x20L) != 0L)
-            return jjStopAtPos(1, 69);
-         else if ((active1 & 0x40L) != 0L)
-            return jjStopAtPos(1, 70);
-         else if ((active1 & 0x80L) != 0L)
-            return jjStopAtPos(1, 71);
-         else if ((active1 & 0x400L) != 0L)
-            return jjStopAtPos(1, 74);
-         else if ((active1 & 0x800L) != 0L)
-            return jjStopAtPos(1, 75);
-         else if ((active1 & 0x1000L) != 0L)
-            return jjStopAtPos(1, 76);
-         else if ((active1 & 0x80000L) != 0L)
-            return jjStopAtPos(1, 83);
-         else if ((active1 & 0x100000L) != 0L)
-            return jjStopAtPos(1, 84);
-         else if ((active1 & 0x800000L) != 0L)
-            return jjStopAtPos(1, 87);
-         else if ((active1 & 0x1000000L) != 0L)
-            return jjStopAtPos(1, 88);
-         break;
-      case 62:
-         if ((active1 & 0x4000000L) != 0L)
-         {
-            jjmatchedKind = 90;
-            jjmatchedPos = 1;
-         }
-         else if ((active1 & 0x1000000000L) != 0L)
-            return jjStopAtPos(1, 100);
-         return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x200L);
-      case 97:
-         return jjMoveStringLiteralDfa2_0(active0, 0x20000000000L, active1, 0L);
-      case 101:
-         return jjMoveStringLiteralDfa2_0(active0, 0x22400000L, active1, 0L);
-      case 102:
-         if ((active0 & 0x4000000000000L) != 0L)
-            return jjStartNfaWithStates_0(1, 50, 42);
-         break;
-      case 104:
-         return jjMoveStringLiteralDfa2_0(active0, 0x408400000000L, active1, 0L);
-      case 105:
-         return jjMoveStringLiteralDfa2_0(active0, 0x208000000L, active1, 0L);
-      case 108:
-         return jjMoveStringLiteralDfa2_0(active0, 0x14000000000L, active1, 0L);
-      case 110:
-         return jjMoveStringLiteralDfa2_0(active0, 0x2081000800000L, active1, 0L);
-      case 111:
-         if ((active0 & 0x8000000000000L) != 0L)
-         {
-            jjmatchedKind = 51;
-            jjmatchedPos = 1;
-         }
-         return jjMoveStringLiteralDfa2_0(active0, 0x1a42004300000L, active1, 0L);
-      case 114:
-         return jjMoveStringLiteralDfa2_0(active0, 0x800000000L, active1, 0L);
-      case 116:
-         return jjMoveStringLiteralDfa2_0(active0, 0x180000000L, active1, 0L);
-      case 117:
-         return jjMoveStringLiteralDfa2_0(active0, 0x100000000000L, active1, 0L);
-      case 119:
-         return jjMoveStringLiteralDfa2_0(active0, 0x10000000L, active1, 0L);
-      case 120:
-         return jjMoveStringLiteralDfa2_0(active0, 0x40000000L, active1, 0L);
-      case 121:
-         return jjMoveStringLiteralDfa2_0(active0, 0x1000000L, active1, 0L);
-      case 124:
-         if ((active1 & 0x4000L) != 0L)
-            return jjStopAtPos(1, 78);
-         break;
-      default :
-         break;
-   }
-   return jjStartNfa_0(0, active0, active1);
-}
-private int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, long active1)
-{
-   if (((active0 &= old0) | (active1 &= old1)) == 0L)
-      return jjStartNfa_0(0, old0, old1);
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      jjStopStringLiteralDfa_0(1, active0, active1);
-      return 2;
-   }
-   switch(curChar)
-   {
-      case 46:
-         if ((active0 & 0x1000000000000000L) != 0L)
-            return jjStopAtPos(2, 60);
-         break;
-      case 61:
-         if ((active1 & 0x100L) != 0L)
-            return jjStopAtPos(2, 72);
-         else if ((active1 & 0x200L) != 0L)
-            return jjStopAtPos(2, 73);
-         break;
-      case 97:
-         return jjMoveStringLiteralDfa3_0(active0, 0x400100000000L, active1, 0L);
-      case 101:
-         return jjMoveStringLiteralDfa3_0(active0, 0x800000000L, active1, 0L);
-      case 102:
-         return jjMoveStringLiteralDfa3_0(active0, 0x2000000L, active1, 0L);
-      case 103:
-         return jjMoveStringLiteralDfa3_0(active0, 0x200400000L, active1, 0L);
-      case 105:
-         return jjMoveStringLiteralDfa3_0(active0, 0x201410000000L, active1, 0L);
-      case 108:
-         return jjMoveStringLiteralDfa3_0(active0, 0x200000L, active1, 0L);
-      case 110:
-         return jjMoveStringLiteralDfa3_0(active0, 0x42000100000L, active1, 0L);
-      case 111:
-         return jjMoveStringLiteralDfa3_0(active0, 0xc000000000L, active1, 0L);
-      case 112:
-         return jjMoveStringLiteralDfa3_0(active0, 0x1000000L, active1, 0L);
-      case 114:
-         if ((active0 & 0x1000000000000L) != 0L)
-            return jjStartNfaWithStates_0(2, 48, 42);
-         return jjMoveStringLiteralDfa3_0(active0, 0x80000000L, active1, 0L);
-      case 115:
-         return jjMoveStringLiteralDfa3_0(active0, 0x30000800000L, active1, 0L);
-      case 116:
-         if ((active0 & 0x2000000000000L) != 0L)
-            return jjStartNfaWithStates_0(2, 49, 42);
-         return jjMoveStringLiteralDfa3_0(active0, 0x900060000000L, active1, 0L);
-      case 117:
-         return jjMoveStringLiteralDfa3_0(active0, 0x80004000000L, active1, 0L);
-      case 122:
-         return jjMoveStringLiteralDfa3_0(active0, 0x8000000L, active1, 0L);
-      default :
-         break;
-   }
-   return jjStartNfa_0(1, active0, active1);
-}
-private int jjMoveStringLiteralDfa3_0(long old0, long active0, long old1, long active1)
-{
-   if (((active0 &= old0) | (active1 &= old1)) == 0L)
-      return jjStartNfa_0(1, old0, old1);
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      jjStopStringLiteralDfa_0(2, active0, 0L);
-      return 3;
-   }
-   switch(curChar)
-   {
-      case 97:
-         return jjMoveStringLiteralDfa4_0(active0, 0x4802200000L);
-      case 98:
-         return jjMoveStringLiteralDfa4_0(active0, 0x4000000L);
-      case 100:
-         if ((active0 & 0x200000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 45, 42);
-         break;
-      case 101:
-         if ((active0 & 0x10000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 40, 42);
-         else if ((active0 & 0x20000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 41, 42);
-         return jjMoveStringLiteralDfa4_0(active0, 0x49000000L);
-      case 103:
-         if ((active0 & 0x40000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 42, 42);
-         break;
-      case 105:
-         return jjMoveStringLiteralDfa4_0(active0, 0xc00000L);
-      case 108:
-         return jjMoveStringLiteralDfa4_0(active0, 0x400000000L);
-      case 109:
-         if ((active0 & 0x80000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 43, 42);
-         break;
-      case 110:
-         return jjMoveStringLiteralDfa4_0(active0, 0x200000000L);
-      case 111:
-         if ((active0 & 0x100000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 44, 42);
-         else if ((active0 & 0x800000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 47, 42);
-         return jjMoveStringLiteralDfa4_0(active0, 0x1000000000L);
-      case 114:
-         if ((active0 & 0x400000000000L) != 0L)
-            return jjStartNfaWithStates_0(3, 46, 42);
-         return jjMoveStringLiteralDfa4_0(active0, 0x8000000000L);
-      case 115:
-         return jjMoveStringLiteralDfa4_0(active0, 0x2000000000L);
-      case 116:
-         return jjMoveStringLiteralDfa4_0(active0, 0x110100000L);
-      case 117:
-         return jjMoveStringLiteralDfa4_0(active0, 0xa0000000L);
-      default :
-         break;
-   }
-   return jjStartNfa_0(2, active0, 0L);
-}
-private int jjMoveStringLiteralDfa4_0(long old0, long active0)
-{
-   if (((active0 &= old0)) == 0L)
-      return jjStartNfa_0(2, old0, 0L);
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      jjStopStringLiteralDfa_0(3, active0, 0L);
-      return 4;
-   }
-   switch(curChar)
-   {
-      case 99:
-         return jjMoveStringLiteralDfa5_0(active0, 0x90000000L);
-      case 100:
-         return jjMoveStringLiteralDfa5_0(active0, 0x1000000L);
-      case 101:
-         if ((active0 & 0x400000000L) != 0L)
-            return jjStartNfaWithStates_0(4, 34, 42);
-         return jjMoveStringLiteralDfa5_0(active0, 0x200000000L);
-      case 103:
-         return jjMoveStringLiteralDfa5_0(active0, 0x800000L);
-      case 105:
-         return jjMoveStringLiteralDfa5_0(active0, 0x100100000L);
-      case 107:
-         if ((active0 & 0x800000000L) != 0L)
-            return jjStartNfaWithStates_0(4, 35, 42);
-         break;
-      case 108:
-         return jjMoveStringLiteralDfa5_0(active0, 0x4000000L);
-      case 110:
-         if ((active0 & 0x1000000000L) != 0L)
-            return jjStartNfaWithStates_0(4, 36, 42);
-         break;
-      case 111:
-         return jjMoveStringLiteralDfa5_0(active0, 0x8000000L);
-      case 114:
-         return jjMoveStringLiteralDfa5_0(active0, 0x60000000L);
-      case 115:
-         return jjMoveStringLiteralDfa5_0(active0, 0x400000L);
-      case 116:
-         if ((active0 & 0x2000000000L) != 0L)
-            return jjStartNfaWithStates_0(4, 37, 42);
-         else if ((active0 & 0x4000000000L) != 0L)
-            return jjStartNfaWithStates_0(4, 38, 42);
-         else if ((active0 & 0x8000000000L) != 0L)
-            return jjStartNfaWithStates_0(4, 39, 42);
-         return jjMoveStringLiteralDfa5_0(active0, 0x200000L);
-      case 117:
-         return jjMoveStringLiteralDfa5_0(active0, 0x2000000L);
-      default :
-         break;
-   }
-   return jjStartNfa_0(3, active0, 0L);
-}
-private int jjMoveStringLiteralDfa5_0(long old0, long active0)
-{
-   if (((active0 &= old0)) == 0L)
-      return jjStartNfa_0(3, old0, 0L);
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      jjStopStringLiteralDfa_0(4, active0, 0L);
-      return 5;
-   }
-   switch(curChar)
-   {
-      case 99:
-         if ((active0 & 0x100000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 32, 42);
-         break;
-      case 100:
-         if ((active0 & 0x200000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 33, 42);
-         break;
-      case 101:
-         if ((active0 & 0x4000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 26, 42);
-         return jjMoveStringLiteralDfa6_0(active0, 0x1000000L);
-      case 102:
-         if ((active0 & 0x8000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 27, 42);
-         break;
-      case 104:
-         if ((active0 & 0x10000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 28, 42);
-         break;
-      case 105:
-         return jjMoveStringLiteralDfa6_0(active0, 0x200000L);
-      case 108:
-         return jjMoveStringLiteralDfa6_0(active0, 0x2000000L);
-      case 110:
-         if ((active0 & 0x20000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 29, 42);
-         else if ((active0 & 0x40000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 30, 42);
-         return jjMoveStringLiteralDfa6_0(active0, 0x900000L);
-      case 116:
-         if ((active0 & 0x80000000L) != 0L)
-            return jjStartNfaWithStates_0(5, 31, 42);
-         return jjMoveStringLiteralDfa6_0(active0, 0x400000L);
-      default :
-         break;
-   }
-   return jjStartNfa_0(4, active0, 0L);
-}
-private int jjMoveStringLiteralDfa6_0(long old0, long active0)
-{
-   if (((active0 &= old0)) == 0L)
-      return jjStartNfa_0(4, old0, 0L);
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      jjStopStringLiteralDfa_0(5, active0, 0L);
-      return 6;
-   }
-   switch(curChar)
-   {
-      case 101:
-         return jjMoveStringLiteralDfa7_0(active0, 0xc00000L);
-      case 102:
-         if ((active0 & 0x1000000L) != 0L)
-            return jjStartNfaWithStates_0(6, 24, 42);
-         break;
-      case 108:
-         return jjMoveStringLiteralDfa7_0(active0, 0x200000L);
-      case 116:
-         if ((active0 & 0x2000000L) != 0L)
-            return jjStartNfaWithStates_0(6, 25, 42);
-         break;
-      case 117:
-         return jjMoveStringLiteralDfa7_0(active0, 0x100000L);
-      default :
-         break;
-   }
-   return jjStartNfa_0(5, active0, 0L);
-}
-private int jjMoveStringLiteralDfa7_0(long old0, long active0)
-{
-   if (((active0 &= old0)) == 0L)
-      return jjStartNfa_0(5, old0, 0L);
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      jjStopStringLiteralDfa_0(6, active0, 0L);
-      return 7;
-   }
-   switch(curChar)
-   {
-      case 100:
-         if ((active0 & 0x800000L) != 0L)
-            return jjStartNfaWithStates_0(7, 23, 42);
-         break;
-      case 101:
-         if ((active0 & 0x100000L) != 0L)
-            return jjStartNfaWithStates_0(7, 20, 42);
-         else if ((active0 & 0x200000L) != 0L)
-            return jjStartNfaWithStates_0(7, 21, 42);
-         break;
-      case 114:
-         if ((active0 & 0x400000L) != 0L)
-            return jjStartNfaWithStates_0(7, 22, 42);
-         break;
-      default :
-         break;
-   }
-   return jjStartNfa_0(6, active0, 0L);
-}
-private int jjStartNfaWithStates_0(int pos, int kind, int state)
-{
-   jjmatchedKind = kind;
-   jjmatchedPos = pos;
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) { return pos + 1; }
-   return jjMoveNfa_0(state, pos + 1);
-}
-static final long[] jjbitVec0 = {
-   0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
-};
-private int jjMoveNfa_0(int startState, int curPos)
-{
-   int startsAt = 0;
-   jjnewStateCnt = 76;
-   int i = 1;
-   jjstateSet[0] = startState;
-   int kind = 0x7fffffff;
-   for (;;)
-   {
-      if (++jjround == 0x7fffffff)
-         ReInitRounds();
-      if (curChar < 64)
-      {
-         long l = 1L << curChar;
-         do
-         {
-            switch(jjstateSet[--i])
-            {
-               case 65:
-                  if (curChar == 42)
-                     jjCheckNAddTwoStates(71, 72);
-                  else if (curChar == 47)
-                     jjCheckNAddStates(0, 2);
-                  break;
-               case 0:
-                  if ((0x3ff000000000000L & l) != 0L)
-                     jjCheckNAddStates(3, 9);
-                  else if (curChar == 47)
-                     jjAddStates(10, 11);
-                  else if (curChar == 36)
-                  {
-                     if (kind > 52)
-                        kind = 52;
-                     jjCheckNAdd(42);
-                  }
-                  else if (curChar == 34)
-                     jjCheckNAddStates(12, 14);
-                  else if (curChar == 39)
-                     jjAddStates(15, 16);
-                  else if (curChar == 46)
-                     jjCheckNAdd(5);
-                  if ((0x3fe000000000000L & l) != 0L)
-                  {
-                     if (kind > 12)
-                        kind = 12;
-                     jjCheckNAddTwoStates(1, 2);
-                  }
-                  else if (curChar == 48)
-                  {
-                     if (kind > 12)
-                        kind = 12;
-                     jjCheckNAddStates(17, 19);
-                  }
-                  break;
-               case 1:
-                  if ((0x3ff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 12)
-                     kind = 12;
-                  jjCheckNAddTwoStates(1, 2);
-                  break;
-               case 4:
-                  if (curChar == 46)
-                     jjCheckNAdd(5);
-                  break;
-               case 5:
-                  if ((0x3ff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 16)
-                     kind = 16;
-                  jjCheckNAddStates(20, 22);
-                  break;
-               case 7:
-                  if ((0x280000000000L & l) != 0L)
-                     jjCheckNAdd(8);
-                  break;
-               case 8:
-                  if ((0x3ff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 16)
-                     kind = 16;
-                  jjCheckNAddTwoStates(8, 9);
-                  break;
-               case 10:
-                  if (curChar == 39)
-                     jjAddStates(15, 16);
-                  break;
-               case 11:
-                  if ((0xffffff7fffffdbffL & l) != 0L)
-                     jjCheckNAdd(12);
-                  break;
-               case 12:
-                  if (curChar == 39 && kind > 18)
-                     kind = 18;
-                  break;
-               case 14:
-                  if ((0x8400000000L & l) != 0L)
-                     jjCheckNAdd(12);
-                  break;
-               case 15:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAddTwoStates(16, 12);
-                  break;
-               case 16:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAdd(12);
-                  break;
-               case 17:
-                  if ((0xf000000000000L & l) != 0L)
-                     jjstateSet[jjnewStateCnt++] = 18;
-                  break;
-               case 18:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAdd(16);
-                  break;
-               case 19:
-                  if (curChar == 34)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 20:
-                  if ((0xfffffffbffffdbffL & l) != 0L)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 22:
-                  if ((0x8400002400L & l) != 0L)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 23:
-                  if (curChar != 34)
-                     break;
-                  if (kind > 19)
-                     kind = 19;
-                  jjCheckNAddTwoStates(24, 25);
-                  break;
-               case 24:
-                  if ((0x100002400L & l) != 0L)
-                     jjCheckNAddTwoStates(24, 25);
-                  break;
-               case 25:
-                  if (curChar == 34)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 26:
-                  if ((0xfffffffbffffdbffL & l) != 0L)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 28:
-                  if ((0x8400002400L & l) != 0L)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 29:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAddStates(26, 29);
-                  break;
-               case 30:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 31:
-                  if ((0xf000000000000L & l) != 0L)
-                     jjstateSet[jjnewStateCnt++] = 32;
-                  break;
-               case 32:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAdd(30);
-                  break;
-               case 33:
-                  if (curChar == 10)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 34:
-                  if (curChar == 13)
-                     jjstateSet[jjnewStateCnt++] = 33;
-                  break;
-               case 35:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAddStates(30, 33);
-                  break;
-               case 36:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 37:
-                  if ((0xf000000000000L & l) != 0L)
-                     jjstateSet[jjnewStateCnt++] = 38;
-                  break;
-               case 38:
-                  if ((0xff000000000000L & l) != 0L)
-                     jjCheckNAdd(36);
-                  break;
-               case 39:
-                  if (curChar == 10)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 40:
-                  if (curChar == 13)
-                     jjstateSet[jjnewStateCnt++] = 39;
-                  break;
-               case 41:
-                  if (curChar != 36)
-                     break;
-                  if (kind > 52)
-                     kind = 52;
-                  jjCheckNAdd(42);
-                  break;
-               case 42:
-                  if ((0x3ff001000000000L & l) == 0L)
-                     break;
-                  if (kind > 52)
-                     kind = 52;
-                  jjCheckNAdd(42);
-                  break;
-               case 43:
-                  if ((0x3ff000000000000L & l) != 0L)
-                     jjCheckNAddStates(3, 9);
-                  break;
-               case 44:
-                  if ((0x3ff000000000000L & l) != 0L)
-                     jjCheckNAddTwoStates(44, 45);
-                  break;
-               case 45:
-                  if (curChar != 46)
-                     break;
-                  if (kind > 16)
-                     kind = 16;
-                  jjCheckNAddStates(34, 36);
-                  break;
-               case 46:
-                  if ((0x3ff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 16)
-                     kind = 16;
-                  jjCheckNAddStates(34, 36);
-                  break;
-               case 48:
-                  if ((0x280000000000L & l) != 0L)
-                     jjCheckNAdd(49);
-                  break;
-               case 49:
-                  if ((0x3ff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 16)
-                     kind = 16;
-                  jjCheckNAddTwoStates(49, 9);
-                  break;
-               case 50:
-                  if ((0x3ff000000000000L & l) != 0L)
-                     jjCheckNAddTwoStates(50, 51);
-                  break;
-               case 52:
-                  if ((0x280000000000L & l) != 0L)
-                     jjCheckNAdd(53);
-                  break;
-               case 53:
-                  if ((0x3ff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 16)
-                     kind = 16;
-                  jjCheckNAddTwoStates(53, 9);
-                  break;
-               case 54:
-                  if ((0x3ff000000000000L & l) != 0L)
-                     jjCheckNAddStates(37, 39);
-                  break;
-               case 56:
-                  if ((0x280000000000L & l) != 0L)
-                     jjCheckNAdd(57);
-                  break;
-               case 57:
-                  if ((0x3ff000000000000L & l) != 0L)
-                     jjCheckNAddTwoStates(57, 9);
-                  break;
-               case 58:
-                  if (curChar != 48)
-                     break;
-                  if (kind > 12)
-                     kind = 12;
-                  jjCheckNAddStates(17, 19);
-                  break;
-               case 60:
-                  if ((0x3ff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 12)
-                     kind = 12;
-                  jjAddStates(40, 41);
-                  break;
-               case 62:
-                  if ((0xff000000000000L & l) == 0L)
-                     break;
-                  if (kind > 12)
-                     kind = 12;
-                  jjCheckNAddTwoStates(62, 63);
-                  break;
-               case 64:
-                  if (curChar == 47)
-                     jjAddStates(10, 11);
-                  break;
-               case 66:
-                  if ((0xffffffffffffdbffL & l) != 0L)
-                     jjCheckNAddStates(0, 2);
-                  break;
-               case 67:
-                  if ((0x2400L & l) != 0L && kind > 5)
-                     kind = 5;
-                  break;
-               case 68:
-                  if (curChar == 10 && kind > 5)
-                     kind = 5;
-                  break;
-               case 69:
-                  if (curChar == 13)
-                     jjstateSet[jjnewStateCnt++] = 68;
-                  break;
-               case 70:
-                  if (curChar == 42)
-                     jjCheckNAddTwoStates(71, 72);
-                  break;
-               case 71:
-                  if ((0xfffffbffffffffffL & l) != 0L)
-                     jjCheckNAddTwoStates(71, 72);
-                  break;
-               case 72:
-                  if (curChar == 42)
-                     jjCheckNAddStates(42, 44);
-                  break;
-               case 73:
-                  if ((0xffff7bffffffffffL & l) != 0L)
-                     jjCheckNAddTwoStates(74, 72);
-                  break;
-               case 74:
-                  if ((0xfffffbffffffffffL & l) != 0L)
-                     jjCheckNAddTwoStates(74, 72);
-                  break;
-               case 75:
-                  if (curChar == 47 && kind > 6)
-                     kind = 6;
-                  break;
-               default : break;
-            }
-         } while(i != startsAt);
-      }
-      else if (curChar < 128)
-      {
-         long l = 1L << (curChar & 077);
-         do
-         {
-            switch(jjstateSet[--i])
-            {
-               case 0:
-               case 42:
-                  if ((0x7fffffe87fffffeL & l) == 0L)
-                     break;
-                  if (kind > 52)
-                     kind = 52;
-                  jjCheckNAdd(42);
-                  break;
-               case 2:
-               case 61:
-               case 63:
-                  if ((0x100000001000L & l) == 0L)
-                     break;
-                  if (kind > 12)
-                     kind = 12;
-                  jjCheckNAdd(3);
-                  break;
-               case 3:
-                  if ((0x100000001000L & l) != 0L && kind > 12)
-                     kind = 12;
-                  break;
-               case 6:
-                  if ((0x2000000020L & l) != 0L)
-                     jjAddStates(45, 46);
-                  break;
-               case 9:
-                  if ((0x5000000050L & l) != 0L && kind > 16)
-                     kind = 16;
-                  break;
-               case 11:
-                  if ((0xffffffffefffffffL & l) != 0L)
-                     jjCheckNAdd(12);
-                  break;
-               case 13:
-                  if (curChar == 92)
-                     jjAddStates(47, 49);
-                  break;
-               case 14:
-                  if ((0x14404410000000L & l) != 0L)
-                     jjCheckNAdd(12);
-                  break;
-               case 20:
-                  if ((0xffffffffefffffffL & l) != 0L)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 21:
-                  if (curChar == 92)
-                     jjAddStates(50, 53);
-                  break;
-               case 22:
-                  if ((0x14404410000000L & l) != 0L)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 26:
-                  if ((0xffffffffefffffffL & l) != 0L)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 27:
-                  if (curChar == 92)
-                     jjAddStates(54, 57);
-                  break;
-               case 28:
-                  if ((0x14404410000000L & l) != 0L)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 47:
-                  if ((0x2000000020L & l) != 0L)
-                     jjAddStates(58, 59);
-                  break;
-               case 51:
-                  if ((0x2000000020L & l) != 0L)
-                     jjAddStates(60, 61);
-                  break;
-               case 55:
-                  if ((0x2000000020L & l) != 0L)
-                     jjAddStates(62, 63);
-                  break;
-               case 59:
-                  if ((0x100000001000000L & l) != 0L)
-                     jjCheckNAdd(60);
-                  break;
-               case 60:
-                  if ((0x7e0000007eL & l) == 0L)
-                     break;
-                  if (kind > 12)
-                     kind = 12;
-                  jjCheckNAddTwoStates(60, 61);
-                  break;
-               case 66:
-                  jjAddStates(0, 2);
-                  break;
-               case 71:
-                  jjCheckNAddTwoStates(71, 72);
-                  break;
-               case 73:
-               case 74:
-                  jjCheckNAddTwoStates(74, 72);
-                  break;
-               default : break;
-            }
-         } while(i != startsAt);
-      }
-      else
-      {
-         int i2 = (curChar & 0xff) >> 6;
-         long l2 = 1L << (curChar & 077);
-         do
-         {
-            switch(jjstateSet[--i])
-            {
-               case 11:
-                  if ((jjbitVec0[i2] & l2) != 0L)
-                     jjstateSet[jjnewStateCnt++] = 12;
-                  break;
-               case 20:
-                  if ((jjbitVec0[i2] & l2) != 0L)
-                     jjCheckNAddStates(12, 14);
-                  break;
-               case 26:
-                  if ((jjbitVec0[i2] & l2) != 0L)
-                     jjCheckNAddStates(23, 25);
-                  break;
-               case 66:
-                  if ((jjbitVec0[i2] & l2) != 0L)
-                     jjAddStates(0, 2);
-                  break;
-               case 71:
-                  if ((jjbitVec0[i2] & l2) != 0L)
-                     jjCheckNAddTwoStates(71, 72);
-                  break;
-               case 73:
-               case 74:
-                  if ((jjbitVec0[i2] & l2) != 0L)
-                     jjCheckNAddTwoStates(74, 72);
-                  break;
-               default : break;
-            }
-         } while(i != startsAt);
-      }
-      if (kind != 0x7fffffff)
-      {
-         jjmatchedKind = kind;
-         jjmatchedPos = curPos;
-         kind = 0x7fffffff;
-      }
-      ++curPos;
-      if ((i = jjnewStateCnt) == (startsAt = 76 - (jjnewStateCnt = startsAt)))
-         return curPos;
-      try { curChar = input_stream.readChar(); }
-      catch(java.io.IOException e) { return curPos; }
-   }
-}
-private int jjMoveStringLiteralDfa0_1()
-{
-   switch(curChar)
-   {
-      case 10:
-         return jjStopAtPos(0, 8);
-      case 92:
-         return jjMoveStringLiteralDfa1_1(0x600L);
-      default :
-         return 1;
-   }
-}
-private int jjMoveStringLiteralDfa1_1(long active0)
-{
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      return 1;
-   }
-   switch(curChar)
-   {
-      case 10:
-         if ((active0 & 0x200L) != 0L)
-            return jjStopAtPos(1, 9);
-         break;
-      case 13:
-         return jjMoveStringLiteralDfa2_1(active0, 0x400L);
-      default :
-         return 2;
-   }
-   return 2;
-}
-private int jjMoveStringLiteralDfa2_1(long old0, long active0)
-{
-   if (((active0 &= old0)) == 0L)
-      return 2;
-   try { curChar = input_stream.readChar(); }
-   catch(java.io.IOException e) {
-      return 2;
-   }
-   switch(curChar)
-   {
-      case 10:
-         if ((active0 & 0x400L) != 0L)
-            return jjStopAtPos(2, 10);
-         break;
-      default :
-         return 3;
-   }
-   return 3;
-}
-static final int[] jjnextStates = {
-   66, 67, 69, 44, 45, 50, 51, 54, 55, 9, 65, 70, 20, 21, 23, 11, 
-   13, 59, 62, 63, 5, 6, 9, 26, 27, 23, 26, 27, 30, 23, 20, 21, 
-   36, 23, 46, 47, 9, 54, 55, 9, 60, 61, 72, 73, 75, 7, 8, 14, 
-   15, 17, 22, 35, 37, 40, 28, 29, 31, 34, 48, 49, 52, 53, 56, 57, 
-};
-
-/** Token literal values. */
-public static final String[] jjstrLiteralImages = {
-"", null, null, null, null, null, null, null, null, null, null, null, null, 
-null, null, null, null, null, null, null, "\143\157\156\164\151\156\165\145", 
-"\166\157\154\141\164\151\154\145", "\162\145\147\151\163\164\145\162", "\165\156\163\151\147\156\145\144", 
-"\164\171\160\145\144\145\146", "\144\145\146\141\165\154\164", "\144\157\165\142\154\145", 
-"\163\151\172\145\157\146", "\163\167\151\164\143\150", "\162\145\164\165\162\156", 
-"\145\170\164\145\162\156", "\163\164\162\165\143\164", "\163\164\141\164\151\143", 
-"\163\151\147\156\145\144", "\167\150\151\154\145", "\142\162\145\141\153", "\165\156\151\157\156", 
-"\143\157\156\163\164", "\146\154\157\141\164", "\163\150\157\162\164", "\145\154\163\145", 
-"\143\141\163\145", "\154\157\156\147", "\145\156\165\155", "\141\165\164\157", 
-"\166\157\151\144", "\143\150\141\162", "\147\157\164\157", "\146\157\162", "\151\156\164", 
-"\151\146", "\144\157", null, null, null, "\50", "\51", "\73", "\52", "\54", "\56\56\56", 
-"\173", "\175", "\75", "\72", "\133", "\135", "\52\75", "\57\75", "\45\75", "\53\75", 
-"\55\75", "\74\74\75", "\76\76\75", "\46\75", "\136\75", "\174\75", "\77", "\174\174", 
-"\46\46", "\174", "\136", "\46", "\75\75", "\41\75", "\74", "\76", "\74\75", "\76\75", 
-"\74\74", "\76\76", "\53", "\55", "\57", "\45", "\53\53", "\55\55", "\176", "\41", 
-"\56", "\55\76", };
-
-/** Lexer state names. */
-public static final String[] lexStateNames = {
-   "DEFAULT",
-   "PREPROCESSOR_OUTPUT",
-};
-
-/** Lex State array. */
-public static final int[] jjnewLexState = {
-   -1, -1, -1, -1, -1, -1, -1, 1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-   -1, 
-};
-static final long[] jjtoToken = {
-   0xff9ffffffffd1001L, 0x1fffffffffL, 
-};
-static final long[] jjtoSkip = {
-   0x1feL, 0x0L, 
-};
-static final long[] jjtoMore = {
-   0xe00L, 0x0L, 
-};
-protected SimpleCharStream input_stream;
-private final int[] jjrounds = new int[76];
-private final int[] jjstateSet = new int[152];
-protected char curChar;
-/** Constructor. */
-public CParserTokenManager(SimpleCharStream stream){
-   if (SimpleCharStream.staticFlag)
-      throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
-   input_stream = stream;
-}
-
-/** Constructor. */
-public CParserTokenManager(SimpleCharStream stream, int lexState){
-   this(stream);
-   SwitchTo(lexState);
-}
-
-/** Reinitialise parser. */
-public void ReInit(SimpleCharStream stream)
-{
-   jjmatchedPos = jjnewStateCnt = 0;
-   curLexState = defaultLexState;
-   input_stream = stream;
-   ReInitRounds();
-}
-private void ReInitRounds()
-{
-   int i;
-   jjround = 0x80000001;
-   for (i = 76; i-- > 0;)
-      jjrounds[i] = 0x80000000;
-}
-
-/** Reinitialise parser. */
-public void ReInit(SimpleCharStream stream, int lexState)
-{
-   ReInit(stream);
-   SwitchTo(lexState);
-}
-
-/** Switch to specified lex state. */
-public void SwitchTo(int lexState)
-{
-   if (lexState >= 2 || lexState < 0)
-      throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
-   else
-      curLexState = lexState;
-}
-
-protected Token jjFillToken()
-{
-   final Token t;
-   final String curTokenImage;
-   final int beginLine;
-   final int endLine;
-   final int beginColumn;
-   final int endColumn;
-   String im = jjstrLiteralImages[jjmatchedKind];
-   curTokenImage = (im == null) ? input_stream.GetImage() : im;
-   beginLine = input_stream.getBeginLine();
-   beginColumn = input_stream.getBeginColumn();
-   endLine = input_stream.getEndLine();
-   endColumn = input_stream.getEndColumn();
-   t = Token.newToken(jjmatchedKind, curTokenImage);
-
-   t.beginLine = beginLine;
-   t.endLine = endLine;
-   t.beginColumn = beginColumn;
-   t.endColumn = endColumn;
-
-   return t;
-}
-
-int curLexState = 0;
-int defaultLexState = 0;
-int jjnewStateCnt;
-int jjround;
-int jjmatchedPos;
-int jjmatchedKind;
-
-/** Get the next Token. */
-public Token getNextToken() 
-{
-  Token matchedToken;
-  int curPos = 0;
-
-  EOFLoop :
-  for (;;)
-  {
-   try
-   {
-      curChar = input_stream.BeginToken();
-   }
-   catch(java.io.IOException e)
-   {
-      jjmatchedKind = 0;
-      matchedToken = jjFillToken();
-      return matchedToken;
-   }
-
-   for (;;)
-   {
-     switch(curLexState)
-     {
-       case 0:
-         try { input_stream.backup(0);
-            while (curChar <= 32 && (0x100002600L & (1L << curChar)) != 0L)
-               curChar = input_stream.BeginToken();
-         }
-         catch (java.io.IOException e1) { continue EOFLoop; }
-         jjmatchedKind = 0x7fffffff;
-         jjmatchedPos = 0;
-         curPos = jjMoveStringLiteralDfa0_0();
-         break;
-       case 1:
-         jjmatchedKind = 0x7fffffff;
-         jjmatchedPos = 0;
-         curPos = jjMoveStringLiteralDfa0_1();
-         if (jjmatchedPos == 0 && jjmatchedKind > 11)
-         {
-            jjmatchedKind = 11;
-         }
-         break;
-     }
-     if (jjmatchedKind != 0x7fffffff)
-     {
-        if (jjmatchedPos + 1 < curPos)
-           input_stream.backup(curPos - jjmatchedPos - 1);
-        if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
-        {
-           matchedToken = jjFillToken();
-       if (jjnewLexState[jjmatchedKind] != -1)
-         curLexState = jjnewLexState[jjmatchedKind];
-           return matchedToken;
-        }
-        else if ((jjtoSkip[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
-        {
-         if (jjnewLexState[jjmatchedKind] != -1)
-           curLexState = jjnewLexState[jjmatchedKind];
-           continue EOFLoop;
-        }
-      if (jjnewLexState[jjmatchedKind] != -1)
-        curLexState = jjnewLexState[jjmatchedKind];
-        curPos = 0;
-        jjmatchedKind = 0x7fffffff;
-        try {
-           curChar = input_stream.readChar();
-           continue;
-        }
-        catch (java.io.IOException e1) { }
-     }
-     int error_line = input_stream.getEndLine();
-     int error_column = input_stream.getEndColumn();
-     String error_after = null;
-     boolean EOFSeen = false;
-     try { input_stream.readChar(); input_stream.backup(1); }
-     catch (java.io.IOException e1) {
-        EOFSeen = true;
-        error_after = curPos <= 1 ? "" : input_stream.GetImage();
-        if (curChar == '\n' || curChar == '\r') {
-           error_line++;
-           error_column = 0;
-        }
-        else
-           error_column++;
-     }
-     if (!EOFSeen) {
-        input_stream.backup(1);
-        error_after = curPos <= 1 ? "" : input_stream.GetImage();
-     }
-     throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
-   }
-  }
-}
-
-private void jjCheckNAdd(int state)
-{
-   if (jjrounds[state] != jjround)
-   {
-      jjstateSet[jjnewStateCnt++] = state;
-      jjrounds[state] = jjround;
-   }
-}
-private void jjAddStates(int start, int end)
-{
-   do {
-      jjstateSet[jjnewStateCnt++] = jjnextStates[start];
-   } while (start++ != end);
-}
-private void jjCheckNAddTwoStates(int state1, int state2)
-{
-   jjCheckNAdd(state1);
-   jjCheckNAdd(state2);
-}
-
-private void jjCheckNAddStates(int start, int end)
-{
-   do {
-      jjCheckNAdd(jjnextStates[start]);
-   } while (start++ != end);
-}
-
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/ExpressionDatabaseHandler.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/ExpressionDatabaseHandler.java
deleted file mode 100644 (file)
index 36c34d1..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-package org.gnunet.seaspider.parser;
-
-import java.io.File;
-
-import org.tmatesoft.sqljet.core.SqlJetException;
-import org.tmatesoft.sqljet.core.SqlJetTransactionMode;
-import org.tmatesoft.sqljet.core.table.ISqlJetTable;
-import org.tmatesoft.sqljet.core.table.SqlJetDb;
-
-public class ExpressionDatabaseHandler {
-       
-       private static SqlJetDb db = null;
-       
-       public static void createExpressionDatabase(String databasePath) {
-               String createTableQuery = "CREATE TABLE Expression ( expr_ID INT NOT NULL PRIMARY KEY , " +
-               "file_name TEXT NOT NULL , expr_syntax TEXT NOT NULL ," +
-               " start_lineno INT NOT NULL , end_lineno INT NOT NULL , " +
-               "scope_start_lineno INT NOT NULL , scope_end_lineno INT NOT NULL)";
-               
-               File dbFile = new File(databasePath + "/GNUnetExpressions.db");
-               dbFile.delete();/* Delete it if already existent */        
-               
-               /* Create Expressions database */
-               try {
-                       db = SqlJetDb.open(dbFile, true);
-                       db.getOptions().setAutovacuum(true);
-                       db.beginTransaction(SqlJetTransactionMode.WRITE);
-                       try {
-                               db.getOptions().setUserVersion(1);/* Sets the user's cookie */
-                       } finally {
-                               db.commit();
-                       }
-                       /* Create table Expression */
-                       db.createTable(createTableQuery);
-               }
-               catch (SqlJetException e) {
-                       e.printStackTrace();
-               }
-       }
-       
-       
-       public static void closeDatabase()
-       {
-               try {
-                       db.close();
-               } catch (SqlJetException e) {
-                       e.printStackTrace();
-               }
-       }
-       
-       
-       public static void insertIntoExpressionTable(String fileName, String expressionSyntax, 
-                                                                                               int startLineNo, int endLineNo, int scopeStartLineNo,
-                                                                                               int scopeEndLineNo)
-       {
-               if (db == null) {
-                       System.out.println("Error:Database handle is not initialized. Program will exit now!");
-                       System.exit(1);
-               }
-               
-               ISqlJetTable table;
-               try {
-                       table = db.getTable("Expression");
-                       db.beginTransaction(SqlJetTransactionMode.WRITE);
-                       try {
-                               table.insert(fileName, expressionSyntax, startLineNo, endLineNo, scopeStartLineNo, scopeEndLineNo);
-                       } finally {
-                               db.commit();
-                       }
-               }
-               catch (SqlJetException e) {
-                       e.printStackTrace();
-               }
-       }
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/GNUnetDepthFirstVisitor.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/GNUnetDepthFirstVisitor.java
deleted file mode 100644 (file)
index 17592b8..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.gnunet.seaspider.parser;
-import org.gnunet.seaspider.parser.nodes.AssignmentOperator;
-import org.gnunet.seaspider.parser.nodes.CompoundStatement;
-import org.gnunet.seaspider.parser.nodes.Expression;
-import org.gnunet.seaspider.parser.nodes.NodeToken;
-import org.gnunet.seaspider.parser.visitors.DepthFirstVisitor;
-
-public class GNUnetDepthFirstVisitor extends DepthFirstVisitor {
-       private int current_endline;
-       private int blockStart;
-       private int blockEnd;
-       
-        public void visit(Expression n) {
-               n.f0.accept(this);
-       }
-       public void visit(AssignmentOperator n) {
-           n.f0.accept(this);
-       }
-       
-       /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-    public void visit(CompoundStatement n) {
-       int old_ll = current_endline;
-       current_endline = n.f2.endLine;
-       System.out.println("Scope starts at line:" + n.f0.endLine + " and ends at line:" + n.f2.endLine);
-       n.f0.accept(this);
-       n.f1.accept(this);
-       n.f2.accept(this);
-       current_endline = old_ll;
-    }
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/GNUnetParser.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/GNUnetParser.java
deleted file mode 100644 (file)
index d0a6a94..0000000
+++ /dev/null
@@ -1,5633 +0,0 @@
-package org.gnunet.seaspider.parser;
-/* Generated By:JavaCC: Do not edit this line. CParser.java */
-import java.io.File;
-import java.io.FileFilter;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-
-import org.gnunet.seaspider.parser.nodes.*;
-
-public class GNUnetParser implements CParserConstants {
-   private static final boolean DEBUG = false;
-   
-   public static void main(String args[])
-   {
-     GNUnetParser parser = null;
-     boolean isFirstFile = true;
-     int fileNotFoundCount = 0;
-     int successCount = 0;
-     int failureCount = 0;
-     String databasePath;
-     
-     if (null == (databasePath = args[0])) {
-        System.out.println("Error: Missing Database Path argument. Program will exit now!");
-        System.exit(1);
-     }
-     
-     System.out.println("C Parser Version 0.1Alpha:  Reading from GNUnet source directory . . .");
-     String gnunetSourcePath = System.getenv("MAINDIR") + "/src";
-     
-     /* Filtering out files */
-     FileFilter filter = new FileFilter() {
-         public boolean accept(File file) {
-             return file.isDirectory();
-         }
-     };
-     
-     /* File filter to get only source and header files */
-     FileFilter sourceFilter = new FileFilter() {
-       public boolean accept(File file) {
-               String fileName = file.getName();
-               return (fileName.endsWith(".c") || fileName.endsWith(".h"));
-       }
-     };
-     
-     /* Create the Expressions Database */
-     ExpressionDatabaseHandler.createExpressionDatabase(databasePath);
-     
-     File[] dirArr = (new File(gnunetSourcePath)).listFiles(filter);
-     for (int i = 0; i < dirArr.length; i++) {
-        File dir = dirArr[i];
-        File[] fileArr = dir.listFiles(sourceFilter);
-        for (int j = 0; j < fileArr.length; j++) {
-                try {
-                        if (isFirstFile) {
-                                parser = new GNUnetParser(new FileInputStream(fileArr[j].getPath()));
-                                isFirstFile = false;
-                        }
-                        else
-                                parser.ReInit(new FileInputStream(fileArr[j].getPath()));
-                }
-                catch (FileNotFoundException e) {
-                        fileNotFoundCount++;
-                        e.printStackTrace();
-                }
-                try {
-                        System.out.println("Parsing file: " + dir + "/" + fileArr[j].getName());
-                Node root = parser.TranslationUnit();
-                root.accept(new GNUnetDepthFirstVisitor());
-                System.out.println("File " + dir + "/" + fileArr[j].getName() + " parsed successfully.");
-                successCount++;
-            }
-            catch (ParseException e) {
-                System.out.println("Encountered errors during parsing file " + fileArr[j].getName());
-                failureCount++;
-                if (DEBUG)
-                        e.printStackTrace();
-            }
-        }
-     }
-     
-     /* We're done with the Expression Database, close it */
-     ExpressionDatabaseHandler.closeDatabase();
-     
-     System.out.println(successCount + " parsed successfully.");
-     System.out.println("Failed to parse " + failureCount + " files.");
-     System.out.println(fileNotFoundCount + " files not found.");
-  }
-
-  final public TranslationUnit TranslationUnit() throws ParseException {
-   NodeList n0 = new NodeList();
-   ExternalDeclaration n1;
-    label_1:
-    while (true) {
-      n1 = ExternalDeclaration();
-        n0.addNode(n1);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case REGISTER:
-      case UNSIGNED:
-      case TYPEDEF:
-      case DOUBLE:
-      case EXTERN:
-      case STRUCT:
-      case STATIC:
-      case SIGNED:
-      case UNION:
-      case CONST:
-      case FLOAT:
-      case SHORT:
-      case LONG:
-      case ENUM:
-      case AUTO:
-      case VOID:
-      case CHAR:
-      case INT:
-      case IDENTIFIER:
-        ;
-        break;
-      default:
-        jj_la1[0] = jj_gen;
-        break label_1;
-      }
-    }
-     n0.nodes.trimToSize();
-     {if (true) return new TranslationUnit(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ExternalDeclaration ExternalDeclaration() throws ParseException {
-   NodeListOptional n0 = new NodeListOptional();
-   StorageClassSpecifier n1;
-   NodeChoice n2;
-   FunctionDeclaration n3;
-   StructOrUnionSpecifier n4;
-   VariableDeclaration n5;
-   TypeDeclaration n6;
-    label_2:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case EXTERN:
-      case STATIC:
-        ;
-        break;
-      default:
-        jj_la1[1] = jj_gen;
-        break label_2;
-      }
-      n1 = StorageClassSpecifier();
-        n0.addNode(n1);
-    }
-     n0.nodes.trimToSize();
-    if (jj_2_1(2147483647)) {
-      n3 = FunctionDeclaration();
-           n2 = new NodeChoice(n3, 0);
-    } else if (jj_2_2(2147483647)) {
-      n4 = StructOrUnionSpecifier();
-           n2 = new NodeChoice(n4, 1);
-    } else if (jj_2_3(2147483647)) {
-      n5 = VariableDeclaration();
-           n2 = new NodeChoice(n5, 2);
-    } else if (jj_2_4(2147483647)) {
-      n6 = TypeDeclaration();
-           n2 = new NodeChoice(n6, 3);
-    } else {
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new ExternalDeclaration(n0,n2);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public FunctionDeclaration FunctionDeclaration() throws ParseException {
-   TypeSpecifier n0;
-   NodeToken n1;
-   Token n2;
-   NodeToken n3;
-   Token n4;
-   NodeOptional n5 = new NodeOptional();
-   ParameterList n6;
-   NodeToken n7;
-   Token n8;
-   NodeChoice n9;
-   NodeToken n10;
-   Token n11;
-   CompoundStatement n12;
-    n0 = TypeSpecifier();
-    n2 = jj_consume_token(IDENTIFIER);
-                     n1 = JTBToolkit.makeNodeToken(n2);
-    n4 = jj_consume_token(55);
-            n3 = JTBToolkit.makeNodeToken(n4);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case UNSIGNED:
-    case DOUBLE:
-    case STRUCT:
-    case SIGNED:
-    case UNION:
-    case CONST:
-    case FLOAT:
-    case SHORT:
-    case LONG:
-    case ENUM:
-    case VOID:
-    case CHAR:
-    case INT:
-    case IDENTIFIER:
-      n6 = ParameterList();
-        n5.addNode(n6);
-      break;
-    default:
-      jj_la1[2] = jj_gen;
-      ;
-    }
-    n8 = jj_consume_token(56);
-            n7 = JTBToolkit.makeNodeToken(n8);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 57:
-      n11 = jj_consume_token(57);
-                   n10 = JTBToolkit.makeNodeToken(n11);
-           n9 = new NodeChoice(n10, 0);
-      break;
-    case 61:
-      n12 = CompoundStatement();
-           n9 = new NodeChoice(n12, 1);
-      break;
-    default:
-      jj_la1[3] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new FunctionDeclaration(n0,n1,n3,n5,n7,n9);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public StorageClassSpecifier StorageClassSpecifier() throws ParseException {
-   NodeChoice n0;
-   NodeToken n1;
-   Token n2;
-   NodeToken n3;
-   Token n4;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case STATIC:
-      n2 = jj_consume_token(STATIC);
-                       n1 = JTBToolkit.makeNodeToken(n2);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case EXTERN:
-      n4 = jj_consume_token(EXTERN);
-                       n3 = JTBToolkit.makeNodeToken(n4);
-           n0 = new NodeChoice(n3, 1);
-      break;
-    default:
-      jj_la1[4] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new StorageClassSpecifier(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public TypeDeclaration TypeDeclaration() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeChoice n2;
-   DataType n3;
-   FunctionType n4;
-   NodeToken n5;
-   Token n6;
-    n1 = jj_consume_token(TYPEDEF);
-                  n0 = JTBToolkit.makeNodeToken(n1);
-    if (jj_2_5(2147483647)) {
-      n3 = DataType();
-           n2 = new NodeChoice(n3, 0);
-    } else {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case UNSIGNED:
-      case DOUBLE:
-      case STRUCT:
-      case SIGNED:
-      case UNION:
-      case CONST:
-      case FLOAT:
-      case SHORT:
-      case LONG:
-      case ENUM:
-      case VOID:
-      case CHAR:
-      case INT:
-      case IDENTIFIER:
-        n4 = FunctionType();
-           n2 = new NodeChoice(n4, 1);
-        break;
-      default:
-        jj_la1[5] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-    }
-    n6 = jj_consume_token(57);
-            n5 = JTBToolkit.makeNodeToken(n6);
-     {if (true) return new TypeDeclaration(n0,n2,n5);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public DataType DataType() throws ParseException {
-   StructOrUnionSpecifier n0;
-   NodeToken n1;
-   Token n2;
-    n0 = StructOrUnionSpecifier();
-    n2 = jj_consume_token(IDENTIFIER);
-                     n1 = JTBToolkit.makeNodeToken(n2);
-     {if (true) return new DataType(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public FunctionType FunctionType() throws ParseException {
-   TypeSpecifier n0;
-   NodeToken n1;
-   Token n2;
-   NodeToken n3;
-   Token n4;
-   NodeToken n5;
-   Token n6;
-   NodeToken n7;
-   Token n8;
-   NodeToken n9;
-   Token n10;
-   NodeOptional n11 = new NodeOptional();
-   ParameterList n12;
-   NodeToken n13;
-   Token n14;
-    n0 = TypeSpecifier();
-    n2 = jj_consume_token(55);
-            n1 = JTBToolkit.makeNodeToken(n2);
-    n4 = jj_consume_token(58);
-            n3 = JTBToolkit.makeNodeToken(n4);
-    n6 = jj_consume_token(IDENTIFIER);
-                     n5 = JTBToolkit.makeNodeToken(n6);
-    n8 = jj_consume_token(56);
-            n7 = JTBToolkit.makeNodeToken(n8);
-    n10 = jj_consume_token(55);
-             n9 = JTBToolkit.makeNodeToken(n10);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case UNSIGNED:
-    case DOUBLE:
-    case STRUCT:
-    case SIGNED:
-    case UNION:
-    case CONST:
-    case FLOAT:
-    case SHORT:
-    case LONG:
-    case ENUM:
-    case VOID:
-    case CHAR:
-    case INT:
-    case IDENTIFIER:
-      n12 = ParameterList();
-        n11.addNode(n12);
-      break;
-    default:
-      jj_la1[6] = jj_gen;
-      ;
-    }
-    n14 = jj_consume_token(56);
-             n13 = JTBToolkit.makeNodeToken(n14);
-     {if (true) return new FunctionType(n0,n1,n3,n5,n7,n9,n11,n13);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ParameterList ParameterList() throws ParseException {
-   ParameterDeclaration n0;
-   NodeListOptional n1 = new NodeListOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   ParameterDeclaration n5;
-   NodeOptional n6 = new NodeOptional();
-   NodeSequence n7;
-   NodeToken n8;
-   Token n9;
-   NodeToken n10;
-   Token n11;
-    n0 = ParameterDeclaration();
-    label_3:
-    while (true) {
-      if (jj_2_6(2)) {
-        ;
-      } else {
-        break label_3;
-      }
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(59);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = ParameterDeclaration();
-        n2.addNode(n5);
-        n1.addNode(n2);
-    }
-     n1.nodes.trimToSize();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 59:
-        n7 = new NodeSequence(2);
-      n9 = jj_consume_token(59);
-               n8 = JTBToolkit.makeNodeToken(n9);
-        n7.addNode(n8);
-      n11 = jj_consume_token(60);
-                  n10 = JTBToolkit.makeNodeToken(n11);
-        n7.addNode(n10);
-        n6.addNode(n7);
-      break;
-    default:
-      jj_la1[7] = jj_gen;
-      ;
-    }
-     {if (true) return new ParameterList(n0,n1,n6);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ParameterDeclaration ParameterDeclaration() throws ParseException {
-   TypeSpecifier n0;
-   NodeToken n1;
-   Token n2;
-   NodeOptional n3 = new NodeOptional();
-   Array n4;
-    n0 = TypeSpecifier();
-    n2 = jj_consume_token(IDENTIFIER);
-                     n1 = JTBToolkit.makeNodeToken(n2);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 65:
-      n4 = Array();
-        n3.addNode(n4);
-      break;
-    default:
-      jj_la1[8] = jj_gen;
-      ;
-    }
-     {if (true) return new ParameterDeclaration(n0,n1,n3);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public VariableDeclaration VariableDeclaration() throws ParseException {
-   VariableClassSpecifier n0;
-   TypeSpecifier n1;
-   InitDeclaratorList n2;
-   NodeToken n3;
-   Token n4;
-    n0 = VariableClassSpecifier();
-    n1 = TypeSpecifier();
-    n2 = InitDeclaratorList();
-    n4 = jj_consume_token(57);
-            n3 = JTBToolkit.makeNodeToken(n4);
-     {if (true) return new VariableDeclaration(n0,n1,n2,n3);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public LocalVariableDeclaration LocalVariableDeclaration() throws ParseException {
-   NodeOptional n0 = new NodeOptional();
-   NodeToken n1;
-   Token n2;
-   VariableDeclaration n3;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case STATIC:
-      n2 = jj_consume_token(STATIC);
-                    n1 = JTBToolkit.makeNodeToken(n2);
-        n0.addNode(n1);
-      break;
-    default:
-      jj_la1[9] = jj_gen;
-      ;
-    }
-    n3 = VariableDeclaration();
-     {if (true) return new LocalVariableDeclaration(n0,n3);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public VariableClassSpecifier VariableClassSpecifier() throws ParseException {
-   NodeListOptional n0 = new NodeListOptional();
-   NodeChoice n1;
-   NodeToken n2;
-   Token n3;
-   NodeToken n4;
-   Token n5;
-    label_4:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case REGISTER:
-      case AUTO:
-        ;
-        break;
-      default:
-        jj_la1[10] = jj_gen;
-        break label_4;
-      }
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case AUTO:
-        n3 = jj_consume_token(AUTO);
-                     n2 = JTBToolkit.makeNodeToken(n3);
-           n1 = new NodeChoice(n2, 0);
-        break;
-      case REGISTER:
-        n5 = jj_consume_token(REGISTER);
-                         n4 = JTBToolkit.makeNodeToken(n5);
-           n1 = new NodeChoice(n4, 1);
-        break;
-      default:
-        jj_la1[11] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n0.addNode(n1);
-    }
-     n0.nodes.trimToSize();
-     {if (true) return new VariableClassSpecifier(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public TypeSpecifier TypeSpecifier() throws ParseException {
-   NodeOptional n0 = new NodeOptional();
-   NodeToken n1;
-   Token n2;
-   NodeChoice n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   NodeSequence n8;
-   NodeToken n9;
-   Token n10;
-   NodeOptional n11 = new NodeOptional();
-   NodeToken n12;
-   Token n13;
-   NodeToken n14;
-   Token n15;
-   NodeSequence n16;
-   NodeToken n17;
-   Token n18;
-   NodeOptional n19 = new NodeOptional();
-   NodeToken n20;
-   Token n21;
-   NodeToken n22;
-   Token n23;
-   NodeToken n24;
-   Token n25;
-   NodeSequence n26;
-   NodeChoice n27;
-   NodeToken n28;
-   Token n29;
-   NodeToken n30;
-   Token n31;
-   NodeOptional n32 = new NodeOptional();
-   NodeChoice n33;
-   NodeToken n34;
-   Token n35;
-   NodeSequence n36;
-   NodeToken n37;
-   Token n38;
-   NodeOptional n39;
-   NodeToken n40;
-   Token n41;
-   NodeToken n42;
-   Token n43;
-   NodeSequence n44;
-   NodeToken n45;
-   Token n46;
-   NodeOptional n47;
-   NodeToken n48;
-   Token n49;
-   StructOrUnionSpecifier n50;
-   EnumSpecifier n51;
-   NodeToken n52;
-   Token n53;
-   NodeOptional n54 = new NodeOptional();
-   Pointer n55;
-   NodeOptional n56 = new NodeOptional();
-   Array n57;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case CONST:
-      n2 = jj_consume_token(CONST);
-                   n1 = JTBToolkit.makeNodeToken(n2);
-        n0.addNode(n1);
-      break;
-    default:
-      jj_la1[12] = jj_gen;
-      ;
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case VOID:
-      n5 = jj_consume_token(VOID);
-                     n4 = JTBToolkit.makeNodeToken(n5);
-           n3 = new NodeChoice(n4, 0);
-      break;
-    case CHAR:
-      n7 = jj_consume_token(CHAR);
-                     n6 = JTBToolkit.makeNodeToken(n7);
-           n3 = new NodeChoice(n6, 1);
-      break;
-    case SHORT:
-           n8 = new NodeSequence(2);
-      n10 = jj_consume_token(SHORT);
-                       n9 = JTBToolkit.makeNodeToken(n10);
-           n8.addNode(n9);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INT:
-        n13 = jj_consume_token(INT);
-                        n12 = JTBToolkit.makeNodeToken(n13);
-              n11.addNode(n12);
-        break;
-      default:
-        jj_la1[13] = jj_gen;
-        ;
-      }
-           n8.addNode(n11);
-           n3 = new NodeChoice(n8, 2);
-      break;
-    case INT:
-      n15 = jj_consume_token(INT);
-                     n14 = JTBToolkit.makeNodeToken(n15);
-           n3 = new NodeChoice(n14, 3);
-      break;
-    case LONG:
-           n16 = new NodeSequence(2);
-      n18 = jj_consume_token(LONG);
-                      n17 = JTBToolkit.makeNodeToken(n18);
-           n16.addNode(n17);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case LONG:
-        n21 = jj_consume_token(LONG);
-                         n20 = JTBToolkit.makeNodeToken(n21);
-              n19.addNode(n20);
-        break;
-      default:
-        jj_la1[14] = jj_gen;
-        ;
-      }
-           n16.addNode(n19);
-           n3 = new NodeChoice(n16, 4);
-      break;
-    case FLOAT:
-      n23 = jj_consume_token(FLOAT);
-                       n22 = JTBToolkit.makeNodeToken(n23);
-           n3 = new NodeChoice(n22, 5);
-      break;
-    case DOUBLE:
-      n25 = jj_consume_token(DOUBLE);
-                        n24 = JTBToolkit.makeNodeToken(n25);
-           n3 = new NodeChoice(n24, 6);
-      break;
-    case UNSIGNED:
-    case SIGNED:
-           n26 = new NodeSequence(2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case SIGNED:
-        n29 = jj_consume_token(SIGNED);
-                              n28 = JTBToolkit.makeNodeToken(n29);
-                 n27 = new NodeChoice(n28, 0);
-        break;
-      case UNSIGNED:
-        n31 = jj_consume_token(UNSIGNED);
-                                n30 = JTBToolkit.makeNodeToken(n31);
-                 n27 = new NodeChoice(n30, 1);
-        break;
-      default:
-        jj_la1[15] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-           n26.addNode(n27);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case SHORT:
-      case LONG:
-      case CHAR:
-      case INT:
-              n39 = new NodeOptional();
-              n47 = new NodeOptional();
-        switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-        case CHAR:
-          n35 = jj_consume_token(CHAR);
-                            n34 = JTBToolkit.makeNodeToken(n35);
-                 n33 = new NodeChoice(n34, 0);
-          break;
-        case SHORT:
-                 n36 = new NodeSequence(2);
-          n38 = jj_consume_token(SHORT);
-                             n37 = JTBToolkit.makeNodeToken(n38);
-                 n36.addNode(n37);
-          switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-          case INT:
-            n41 = jj_consume_token(INT);
-                              n40 = JTBToolkit.makeNodeToken(n41);
-                    n39.addNode(n40);
-            break;
-          default:
-            jj_la1[16] = jj_gen;
-            ;
-          }
-                 n36.addNode(n39);
-                 n33 = new NodeChoice(n36, 1);
-          break;
-        case INT:
-          n43 = jj_consume_token(INT);
-                           n42 = JTBToolkit.makeNodeToken(n43);
-                 n33 = new NodeChoice(n42, 2);
-          break;
-        case LONG:
-                 n44 = new NodeSequence(2);
-          n46 = jj_consume_token(LONG);
-                            n45 = JTBToolkit.makeNodeToken(n46);
-                 n44.addNode(n45);
-          switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-          case LONG:
-            n49 = jj_consume_token(LONG);
-                               n48 = JTBToolkit.makeNodeToken(n49);
-                    n47.addNode(n48);
-            break;
-          default:
-            jj_la1[17] = jj_gen;
-            ;
-          }
-                 n44.addNode(n47);
-                 n33 = new NodeChoice(n44, 3);
-          break;
-        default:
-          jj_la1[18] = jj_gen;
-          jj_consume_token(-1);
-          throw new ParseException();
-        }
-              n32.addNode(n33);
-        break;
-      default:
-        jj_la1[19] = jj_gen;
-        ;
-      }
-           n26.addNode(n32);
-           n3 = new NodeChoice(n26, 7);
-      break;
-    case STRUCT:
-    case UNION:
-      n50 = StructOrUnionSpecifier();
-           n3 = new NodeChoice(n50, 8);
-      break;
-    case ENUM:
-      n51 = EnumSpecifier();
-           n3 = new NodeChoice(n51, 9);
-      break;
-    case IDENTIFIER:
-      n53 = jj_consume_token(IDENTIFIER);
-                            n52 = JTBToolkit.makeNodeToken(n53);
-           n3 = new NodeChoice(n52, 10);
-      break;
-    default:
-      jj_la1[20] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 58:
-      n55 = Pointer();
-        n54.addNode(n55);
-      break;
-    default:
-      jj_la1[21] = jj_gen;
-      ;
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 65:
-      n57 = Array();
-        n56.addNode(n57);
-      break;
-    default:
-      jj_la1[22] = jj_gen;
-      ;
-    }
-     {if (true) return new TypeSpecifier(n0,n3,n54,n56);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public NoIdentifierTypeSpecifier NoIdentifierTypeSpecifier() throws ParseException {
-   NodeOptional n0 = new NodeOptional();
-   NodeToken n1;
-   Token n2;
-   NodeChoice n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   NodeSequence n8;
-   NodeToken n9;
-   Token n10;
-   NodeOptional n11 = new NodeOptional();
-   NodeToken n12;
-   Token n13;
-   NodeToken n14;
-   Token n15;
-   NodeSequence n16;
-   NodeToken n17;
-   Token n18;
-   NodeOptional n19 = new NodeOptional();
-   NodeToken n20;
-   Token n21;
-   NodeToken n22;
-   Token n23;
-   NodeToken n24;
-   Token n25;
-   NodeSequence n26;
-   NodeChoice n27;
-   NodeToken n28;
-   Token n29;
-   NodeToken n30;
-   Token n31;
-   NodeOptional n32 = new NodeOptional();
-   NodeChoice n33;
-   NodeToken n34;
-   Token n35;
-   NodeSequence n36;
-   NodeToken n37;
-   Token n38;
-   NodeOptional n39;
-   NodeToken n40;
-   Token n41;
-   NodeToken n42;
-   Token n43;
-   NodeSequence n44;
-   NodeToken n45;
-   Token n46;
-   NodeOptional n47;
-   NodeToken n48;
-   Token n49;
-   StructOrUnionSpecifier n50;
-   EnumSpecifier n51;
-   NodeOptional n52 = new NodeOptional();
-   Pointer n53;
-   NodeOptional n54 = new NodeOptional();
-   Array n55;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case CONST:
-      n2 = jj_consume_token(CONST);
-                   n1 = JTBToolkit.makeNodeToken(n2);
-        n0.addNode(n1);
-      break;
-    default:
-      jj_la1[23] = jj_gen;
-      ;
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case VOID:
-      n5 = jj_consume_token(VOID);
-                     n4 = JTBToolkit.makeNodeToken(n5);
-           n3 = new NodeChoice(n4, 0);
-      break;
-    case CHAR:
-      n7 = jj_consume_token(CHAR);
-                     n6 = JTBToolkit.makeNodeToken(n7);
-           n3 = new NodeChoice(n6, 1);
-      break;
-    case SHORT:
-           n8 = new NodeSequence(2);
-      n10 = jj_consume_token(SHORT);
-                       n9 = JTBToolkit.makeNodeToken(n10);
-           n8.addNode(n9);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INT:
-        n13 = jj_consume_token(INT);
-                        n12 = JTBToolkit.makeNodeToken(n13);
-              n11.addNode(n12);
-        break;
-      default:
-        jj_la1[24] = jj_gen;
-        ;
-      }
-           n8.addNode(n11);
-           n3 = new NodeChoice(n8, 2);
-      break;
-    case INT:
-      n15 = jj_consume_token(INT);
-                     n14 = JTBToolkit.makeNodeToken(n15);
-           n3 = new NodeChoice(n14, 3);
-      break;
-    case LONG:
-           n16 = new NodeSequence(2);
-      n18 = jj_consume_token(LONG);
-                      n17 = JTBToolkit.makeNodeToken(n18);
-           n16.addNode(n17);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case LONG:
-        n21 = jj_consume_token(LONG);
-                         n20 = JTBToolkit.makeNodeToken(n21);
-              n19.addNode(n20);
-        break;
-      default:
-        jj_la1[25] = jj_gen;
-        ;
-      }
-           n16.addNode(n19);
-           n3 = new NodeChoice(n16, 4);
-      break;
-    case FLOAT:
-      n23 = jj_consume_token(FLOAT);
-                       n22 = JTBToolkit.makeNodeToken(n23);
-           n3 = new NodeChoice(n22, 5);
-      break;
-    case DOUBLE:
-      n25 = jj_consume_token(DOUBLE);
-                        n24 = JTBToolkit.makeNodeToken(n25);
-           n3 = new NodeChoice(n24, 6);
-      break;
-    case UNSIGNED:
-    case SIGNED:
-           n26 = new NodeSequence(2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case SIGNED:
-        n29 = jj_consume_token(SIGNED);
-                              n28 = JTBToolkit.makeNodeToken(n29);
-                 n27 = new NodeChoice(n28, 0);
-        break;
-      case UNSIGNED:
-        n31 = jj_consume_token(UNSIGNED);
-                                n30 = JTBToolkit.makeNodeToken(n31);
-                 n27 = new NodeChoice(n30, 1);
-        break;
-      default:
-        jj_la1[26] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-           n26.addNode(n27);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case SHORT:
-      case LONG:
-      case CHAR:
-      case INT:
-              n39 = new NodeOptional();
-              n47 = new NodeOptional();
-        switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-        case CHAR:
-          n35 = jj_consume_token(CHAR);
-                            n34 = JTBToolkit.makeNodeToken(n35);
-                 n33 = new NodeChoice(n34, 0);
-          break;
-        case SHORT:
-                 n36 = new NodeSequence(2);
-          n38 = jj_consume_token(SHORT);
-                             n37 = JTBToolkit.makeNodeToken(n38);
-                 n36.addNode(n37);
-          switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-          case INT:
-            n41 = jj_consume_token(INT);
-                              n40 = JTBToolkit.makeNodeToken(n41);
-                    n39.addNode(n40);
-            break;
-          default:
-            jj_la1[27] = jj_gen;
-            ;
-          }
-                 n36.addNode(n39);
-                 n33 = new NodeChoice(n36, 1);
-          break;
-        case INT:
-          n43 = jj_consume_token(INT);
-                           n42 = JTBToolkit.makeNodeToken(n43);
-                 n33 = new NodeChoice(n42, 2);
-          break;
-        case LONG:
-                 n44 = new NodeSequence(2);
-          n46 = jj_consume_token(LONG);
-                            n45 = JTBToolkit.makeNodeToken(n46);
-                 n44.addNode(n45);
-          switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-          case LONG:
-            n49 = jj_consume_token(LONG);
-                               n48 = JTBToolkit.makeNodeToken(n49);
-                    n47.addNode(n48);
-            break;
-          default:
-            jj_la1[28] = jj_gen;
-            ;
-          }
-                 n44.addNode(n47);
-                 n33 = new NodeChoice(n44, 3);
-          break;
-        default:
-          jj_la1[29] = jj_gen;
-          jj_consume_token(-1);
-          throw new ParseException();
-        }
-              n32.addNode(n33);
-        break;
-      default:
-        jj_la1[30] = jj_gen;
-        ;
-      }
-           n26.addNode(n32);
-           n3 = new NodeChoice(n26, 7);
-      break;
-    case STRUCT:
-    case UNION:
-      n50 = StructOrUnionSpecifier();
-           n3 = new NodeChoice(n50, 8);
-      break;
-    case ENUM:
-      n51 = EnumSpecifier();
-           n3 = new NodeChoice(n51, 9);
-      break;
-    default:
-      jj_la1[31] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 58:
-      n53 = Pointer();
-        n52.addNode(n53);
-      break;
-    default:
-      jj_la1[32] = jj_gen;
-      ;
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 65:
-      n55 = Array();
-        n54.addNode(n55);
-      break;
-    default:
-      jj_la1[33] = jj_gen;
-      ;
-    }
-     {if (true) return new NoIdentifierTypeSpecifier(n0,n3,n52,n54);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public StructOrUnionSpecifier StructOrUnionSpecifier() throws ParseException {
-   NodeChoice n0;
-   NodeSequence n1;
-   StructOrUnion n2;
-   NodeOptional n3 = new NodeOptional();
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   StructDeclarationList n8;
-   NodeToken n9;
-   Token n10;
-   NodeSequence n11;
-   StructOrUnion n12;
-   NodeToken n13;
-   Token n14;
-    if (jj_2_7(3)) {
-        n1 = new NodeSequence(6);
-      n2 = StructOrUnion();
-        n1.addNode(n2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case IDENTIFIER:
-        n5 = jj_consume_token(IDENTIFIER);
-                           n4 = JTBToolkit.makeNodeToken(n5);
-           n3.addNode(n4);
-        break;
-      default:
-        jj_la1[34] = jj_gen;
-        ;
-      }
-        n1.addNode(n3);
-      n7 = jj_consume_token(61);
-               n6 = JTBToolkit.makeNodeToken(n7);
-        n1.addNode(n6);
-      n8 = StructDeclarationList();
-        n1.addNode(n8);
-      n10 = jj_consume_token(62);
-                n9 = JTBToolkit.makeNodeToken(n10);
-        n1.addNode(n9);
-        n0 = new NodeChoice(n1, 0);
-    } else {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case STRUCT:
-      case UNION:
-        n11 = new NodeSequence(2);
-        n12 = StructOrUnion();
-        n11.addNode(n12);
-        n14 = jj_consume_token(IDENTIFIER);
-                         n13 = JTBToolkit.makeNodeToken(n14);
-        n11.addNode(n13);
-        n0 = new NodeChoice(n11, 1);
-        break;
-      default:
-        jj_la1[35] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-    }
-     {if (true) return new StructOrUnionSpecifier(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public StructOrUnion StructOrUnion() throws ParseException {
-   NodeChoice n0;
-   NodeToken n1;
-   Token n2;
-   NodeToken n3;
-   Token n4;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case STRUCT:
-      n2 = jj_consume_token(STRUCT);
-                       n1 = JTBToolkit.makeNodeToken(n2);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case UNION:
-      n4 = jj_consume_token(UNION);
-                      n3 = JTBToolkit.makeNodeToken(n4);
-           n0 = new NodeChoice(n3, 1);
-      break;
-    default:
-      jj_la1[36] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new StructOrUnion(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public StructDeclarationList StructDeclarationList() throws ParseException {
-   NodeList n0 = new NodeList();
-   StructDeclaration n1;
-    label_5:
-    while (true) {
-      n1 = StructDeclaration();
-        n0.addNode(n1);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case UNSIGNED:
-      case DOUBLE:
-      case STRUCT:
-      case SIGNED:
-      case UNION:
-      case CONST:
-      case FLOAT:
-      case SHORT:
-      case LONG:
-      case ENUM:
-      case VOID:
-      case CHAR:
-      case INT:
-      case IDENTIFIER:
-        ;
-        break;
-      default:
-        jj_la1[37] = jj_gen;
-        break label_5;
-      }
-    }
-     n0.nodes.trimToSize();
-     {if (true) return new StructDeclarationList(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public InitDeclaratorList InitDeclaratorList() throws ParseException {
-   InitDeclarator n0;
-   NodeListOptional n1 = new NodeListOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   InitDeclarator n5;
-    n0 = InitDeclarator();
-    label_6:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 59:
-        ;
-        break;
-      default:
-        jj_la1[38] = jj_gen;
-        break label_6;
-      }
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(59);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = InitDeclarator();
-        n2.addNode(n5);
-        n1.addNode(n2);
-    }
-     n1.nodes.trimToSize();
-     {if (true) return new InitDeclaratorList(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public InitDeclarator InitDeclarator() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeOptional n2 = new NodeOptional();
-   Array n3;
-   NodeOptional n4 = new NodeOptional();
-   NodeSequence n5;
-   NodeToken n6;
-   Token n7;
-   Initializer n8;
-    n1 = jj_consume_token(IDENTIFIER);
-                     n0 = JTBToolkit.makeNodeToken(n1);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 65:
-      n3 = Array();
-        n2.addNode(n3);
-      break;
-    default:
-      jj_la1[39] = jj_gen;
-      ;
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 63:
-        n5 = new NodeSequence(2);
-      n7 = jj_consume_token(63);
-               n6 = JTBToolkit.makeNodeToken(n7);
-        n5.addNode(n6);
-      n8 = Initializer();
-        n5.addNode(n8);
-        n4.addNode(n5);
-      break;
-    default:
-      jj_la1[40] = jj_gen;
-      ;
-    }
-     {if (true) return new InitDeclarator(n0,n2,n4);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public StructDeclaration StructDeclaration() throws ParseException {
-   TypeSpecifier n0;
-   NodeToken n1;
-   Token n2;
-   NodeOptional n3 = new NodeOptional();
-   NodeChoice n4;
-   Array n5;
-   NodeSequence n6;
-   NodeToken n7;
-   Token n8;
-   ConstantExpression n9;
-   NodeOptional n10 = new NodeOptional();
-   NodeToken n11;
-   Token n12;
-   NodeToken n13;
-   Token n14;
-    n0 = TypeSpecifier();
-    n2 = jj_consume_token(IDENTIFIER);
-                     n1 = JTBToolkit.makeNodeToken(n2);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 64:
-    case 65:
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 65:
-        n5 = Array();
-           n4 = new NodeChoice(n5, 0);
-        break;
-      case 64:
-           n6 = new NodeSequence(2);
-        n8 = jj_consume_token(64);
-                  n7 = JTBToolkit.makeNodeToken(n8);
-           n6.addNode(n7);
-        n9 = ConstantExpression();
-           n6.addNode(n9);
-           n4 = new NodeChoice(n6, 1);
-        break;
-      default:
-        jj_la1[41] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n3.addNode(n4);
-      break;
-    default:
-      jj_la1[42] = jj_gen;
-      ;
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case IDENTIFIER:
-      n12 = jj_consume_token(IDENTIFIER);
-                         n11 = JTBToolkit.makeNodeToken(n12);
-        n10.addNode(n11);
-      break;
-    default:
-      jj_la1[43] = jj_gen;
-      ;
-    }
-    n14 = jj_consume_token(57);
-             n13 = JTBToolkit.makeNodeToken(n14);
-     {if (true) return new StructDeclaration(n0,n1,n3,n10,n13);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public EnumSpecifier EnumSpecifier() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeChoice n2;
-   NodeSequence n3;
-   NodeOptional n4 = new NodeOptional();
-   NodeToken n5;
-   Token n6;
-   NodeToken n7;
-   Token n8;
-   EnumeratorList n9;
-   NodeToken n10;
-   Token n11;
-   NodeToken n12;
-   Token n13;
-    n1 = jj_consume_token(ENUM);
-               n0 = JTBToolkit.makeNodeToken(n1);
-    if (jj_2_8(3)) {
-           n3 = new NodeSequence(5);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case IDENTIFIER:
-        n6 = jj_consume_token(IDENTIFIER);
-                              n5 = JTBToolkit.makeNodeToken(n6);
-              n4.addNode(n5);
-        break;
-      default:
-        jj_la1[44] = jj_gen;
-        ;
-      }
-           n3.addNode(n4);
-      n8 = jj_consume_token(61);
-                  n7 = JTBToolkit.makeNodeToken(n8);
-           n3.addNode(n7);
-      n9 = EnumeratorList();
-           n3.addNode(n9);
-      n11 = jj_consume_token(62);
-                   n10 = JTBToolkit.makeNodeToken(n11);
-           n3.addNode(n10);
-           n2 = new NodeChoice(n3, 0);
-    } else {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case IDENTIFIER:
-        n13 = jj_consume_token(IDENTIFIER);
-                            n12 = JTBToolkit.makeNodeToken(n13);
-           n2 = new NodeChoice(n12, 1);
-        break;
-      default:
-        jj_la1[45] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-    }
-     {if (true) return new EnumSpecifier(n0,n2);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public EnumeratorList EnumeratorList() throws ParseException {
-   Enumerator n0;
-   NodeListOptional n1 = new NodeListOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   Enumerator n5;
-    n0 = Enumerator();
-    label_7:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 59:
-        ;
-        break;
-      default:
-        jj_la1[46] = jj_gen;
-        break label_7;
-      }
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(59);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = Enumerator();
-        n2.addNode(n5);
-        n1.addNode(n2);
-    }
-     n1.nodes.trimToSize();
-     {if (true) return new EnumeratorList(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public Enumerator Enumerator() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeOptional n2 = new NodeOptional();
-   NodeSequence n3;
-   NodeToken n4;
-   Token n5;
-   ConstantExpression n6;
-    n1 = jj_consume_token(IDENTIFIER);
-                     n0 = JTBToolkit.makeNodeToken(n1);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 63:
-        n3 = new NodeSequence(2);
-      n5 = jj_consume_token(63);
-               n4 = JTBToolkit.makeNodeToken(n5);
-        n3.addNode(n4);
-      n6 = ConstantExpression();
-        n3.addNode(n6);
-        n2.addNode(n3);
-      break;
-    default:
-      jj_la1[47] = jj_gen;
-      ;
-    }
-     {if (true) return new Enumerator(n0,n2);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public Pointer Pointer() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeOptional n2 = new NodeOptional();
-   NodeToken n3;
-   Token n4;
-   NodeOptional n5 = new NodeOptional();
-   Pointer n6;
-    n1 = jj_consume_token(58);
-            n0 = JTBToolkit.makeNodeToken(n1);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case CONST:
-      n4 = jj_consume_token(CONST);
-                   n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      break;
-    default:
-      jj_la1[48] = jj_gen;
-      ;
-    }
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 58:
-      n6 = Pointer();
-        n5.addNode(n6);
-      break;
-    default:
-      jj_la1[49] = jj_gen;
-      ;
-    }
-     {if (true) return new Pointer(n0,n2,n5);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public IdentifierList IdentifierList() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeListOptional n2 = new NodeListOptional();
-   NodeSequence n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-    n1 = jj_consume_token(IDENTIFIER);
-                     n0 = JTBToolkit.makeNodeToken(n1);
-    label_8:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 59:
-        ;
-        break;
-      default:
-        jj_la1[50] = jj_gen;
-        break label_8;
-      }
-        n3 = new NodeSequence(2);
-      n5 = jj_consume_token(59);
-               n4 = JTBToolkit.makeNodeToken(n5);
-        n3.addNode(n4);
-      n7 = jj_consume_token(IDENTIFIER);
-                        n6 = JTBToolkit.makeNodeToken(n7);
-        n3.addNode(n6);
-        n2.addNode(n3);
-    }
-     n2.nodes.trimToSize();
-     {if (true) return new IdentifierList(n0,n2);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public Initializer Initializer() throws ParseException {
-   NodeChoice n0;
-   AssignmentExpression n1;
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   InitializerList n5;
-   NodeOptional n6 = new NodeOptional();
-   NodeToken n7;
-   Token n8;
-   NodeToken n9;
-   Token n10;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case INTEGER_LITERAL:
-    case FLOATING_POINT_LITERAL:
-    case CHARACTER_LITERAL:
-    case STRING_LITERAL:
-    case SIZEOF:
-    case IDENTIFIER:
-    case 55:
-    case 58:
-    case 82:
-    case 91:
-    case 92:
-    case 95:
-    case 96:
-    case 97:
-    case 98:
-      n1 = AssignmentExpression();
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case 61:
-           n2 = new NodeSequence(4);
-      n4 = jj_consume_token(61);
-                  n3 = JTBToolkit.makeNodeToken(n4);
-           n2.addNode(n3);
-      n5 = InitializerList();
-           n2.addNode(n5);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 59:
-        n8 = jj_consume_token(59);
-                     n7 = JTBToolkit.makeNodeToken(n8);
-              n6.addNode(n7);
-        break;
-      default:
-        jj_la1[51] = jj_gen;
-        ;
-      }
-           n2.addNode(n6);
-      n10 = jj_consume_token(62);
-                   n9 = JTBToolkit.makeNodeToken(n10);
-           n2.addNode(n9);
-           n0 = new NodeChoice(n2, 1);
-      break;
-    default:
-      jj_la1[52] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new Initializer(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public InitializerList InitializerList() throws ParseException {
-   Initializer n0;
-   NodeListOptional n1 = new NodeListOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   Initializer n5;
-    n0 = Initializer();
-    label_9:
-    while (true) {
-      if (jj_2_9(2)) {
-        ;
-      } else {
-        break label_9;
-      }
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(59);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = Initializer();
-        n2.addNode(n5);
-        n1.addNode(n2);
-    }
-     n1.nodes.trimToSize();
-     {if (true) return new InitializerList(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public Array Array() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeOptional n2 = new NodeOptional();
-   ConstantExpression n3;
-   NodeToken n4;
-   Token n5;
-    n1 = jj_consume_token(65);
-            n0 = JTBToolkit.makeNodeToken(n1);
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case INTEGER_LITERAL:
-    case FLOATING_POINT_LITERAL:
-    case CHARACTER_LITERAL:
-    case STRING_LITERAL:
-    case SIZEOF:
-    case IDENTIFIER:
-    case 55:
-    case 58:
-    case 82:
-    case 91:
-    case 92:
-    case 95:
-    case 96:
-    case 97:
-    case 98:
-      n3 = ConstantExpression();
-        n2.addNode(n3);
-      break;
-    default:
-      jj_la1[53] = jj_gen;
-      ;
-    }
-    n5 = jj_consume_token(66);
-            n4 = JTBToolkit.makeNodeToken(n5);
-     {if (true) return new Array(n0,n2,n4);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public Statement Statement() throws ParseException {
-   NodeChoice n0;
-   LabeledStatement n1;
-   ExpressionStatement n2;
-   CompoundStatement n3;
-   SelectionStatement n4;
-   IterationStatement n5;
-   JumpStatement n6;
-    if (jj_2_10(2)) {
-      n1 = LabeledStatement();
-           n0 = new NodeChoice(n1, 0);
-    } else {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-      case CHARACTER_LITERAL:
-      case STRING_LITERAL:
-      case SIZEOF:
-      case IDENTIFIER:
-      case 55:
-      case 57:
-      case 58:
-      case 82:
-      case 91:
-      case 92:
-      case 95:
-      case 96:
-      case 97:
-      case 98:
-        n2 = ExpressionStatement();
-           n0 = new NodeChoice(n2, 1);
-        break;
-      case 61:
-        n3 = CompoundStatement();
-           n0 = new NodeChoice(n3, 2);
-        break;
-      case SWITCH:
-      case IF:
-        n4 = SelectionStatement();
-           n0 = new NodeChoice(n4, 3);
-        break;
-      case WHILE:
-      case FOR:
-      case DO:
-        n5 = IterationStatement();
-           n0 = new NodeChoice(n5, 4);
-        break;
-      case CONTINUE:
-      case RETURN:
-      case BREAK:
-      case GOTO:
-        n6 = JumpStatement();
-           n0 = new NodeChoice(n6, 5);
-        break;
-      default:
-        jj_la1[54] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-    }
-     {if (true) return new Statement(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public LabeledStatement LabeledStatement() throws ParseException {
-   NodeChoice n0;
-   NodeSequence n1;
-   NodeToken n2;
-   Token n3;
-   NodeToken n4;
-   Token n5;
-   Statement n6;
-   NodeSequence n7;
-   NodeToken n8;
-   Token n9;
-   ConstantExpression n10;
-   NodeToken n11;
-   Token n12;
-   Statement n13;
-   NodeSequence n14;
-   NodeToken n15;
-   Token n16;
-   NodeToken n17;
-   Token n18;
-   Statement n19;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case IDENTIFIER:
-           n1 = new NodeSequence(3);
-      n3 = jj_consume_token(IDENTIFIER);
-                           n2 = JTBToolkit.makeNodeToken(n3);
-           n1.addNode(n2);
-      n5 = jj_consume_token(64);
-                  n4 = JTBToolkit.makeNodeToken(n5);
-           n1.addNode(n4);
-      n6 = Statement();
-           n1.addNode(n6);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case CASE:
-           n7 = new NodeSequence(4);
-      n9 = jj_consume_token(CASE);
-                     n8 = JTBToolkit.makeNodeToken(n9);
-           n7.addNode(n8);
-      n10 = ConstantExpression();
-           n7.addNode(n10);
-      n12 = jj_consume_token(64);
-                   n11 = JTBToolkit.makeNodeToken(n12);
-           n7.addNode(n11);
-      n13 = Statement();
-           n7.addNode(n13);
-           n0 = new NodeChoice(n7, 1);
-      break;
-    case DFLT:
-           n14 = new NodeSequence(3);
-      n16 = jj_consume_token(DFLT);
-                      n15 = JTBToolkit.makeNodeToken(n16);
-           n14.addNode(n15);
-      n18 = jj_consume_token(64);
-                   n17 = JTBToolkit.makeNodeToken(n18);
-           n14.addNode(n17);
-      n19 = Statement();
-           n14.addNode(n19);
-           n0 = new NodeChoice(n14, 2);
-      break;
-    default:
-      jj_la1[55] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new LabeledStatement(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ExpressionStatement ExpressionStatement() throws ParseException {
-   NodeOptional n0 = new NodeOptional();
-   Expression n1;
-   NodeToken n2;
-   Token n3;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case INTEGER_LITERAL:
-    case FLOATING_POINT_LITERAL:
-    case CHARACTER_LITERAL:
-    case STRING_LITERAL:
-    case SIZEOF:
-    case IDENTIFIER:
-    case 55:
-    case 58:
-    case 82:
-    case 91:
-    case 92:
-    case 95:
-    case 96:
-    case 97:
-    case 98:
-      n1 = Expression();
-        n0.addNode(n1);
-      break;
-    default:
-      jj_la1[56] = jj_gen;
-      ;
-    }
-    n3 = jj_consume_token(57);
-            n2 = JTBToolkit.makeNodeToken(n3);
-     {if (true) return new ExpressionStatement(n0,n2);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public CompoundStatement CompoundStatement() throws ParseException {
-   NodeToken n0;
-   Token n1;
-   NodeListOptional n2 = new NodeListOptional();
-   NodeChoice n3;
-   LocalVariableDeclaration n4;
-   Statement n5;
-   NodeToken n6;
-   Token n7;
-    n1 = jj_consume_token(61);
-            n0 = JTBToolkit.makeNodeToken(n1);
-    label_10:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-      case CHARACTER_LITERAL:
-      case STRING_LITERAL:
-      case CONTINUE:
-      case REGISTER:
-      case UNSIGNED:
-      case DFLT:
-      case DOUBLE:
-      case SIZEOF:
-      case SWITCH:
-      case RETURN:
-      case STRUCT:
-      case STATIC:
-      case SIGNED:
-      case WHILE:
-      case BREAK:
-      case UNION:
-      case CONST:
-      case FLOAT:
-      case SHORT:
-      case CASE:
-      case LONG:
-      case ENUM:
-      case AUTO:
-      case VOID:
-      case CHAR:
-      case GOTO:
-      case FOR:
-      case INT:
-      case IF:
-      case DO:
-      case IDENTIFIER:
-      case 55:
-      case 57:
-      case 58:
-      case 61:
-      case 82:
-      case 91:
-      case 92:
-      case 95:
-      case 96:
-      case 97:
-      case 98:
-        ;
-        break;
-      default:
-        jj_la1[57] = jj_gen;
-        break label_10;
-      }
-      if (jj_2_11(2147483647)) {
-        n4 = LocalVariableDeclaration();
-           n3 = new NodeChoice(n4, 0);
-      } else {
-        switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-        case INTEGER_LITERAL:
-        case FLOATING_POINT_LITERAL:
-        case CHARACTER_LITERAL:
-        case STRING_LITERAL:
-        case CONTINUE:
-        case DFLT:
-        case SIZEOF:
-        case SWITCH:
-        case RETURN:
-        case WHILE:
-        case BREAK:
-        case CASE:
-        case GOTO:
-        case FOR:
-        case IF:
-        case DO:
-        case IDENTIFIER:
-        case 55:
-        case 57:
-        case 58:
-        case 61:
-        case 82:
-        case 91:
-        case 92:
-        case 95:
-        case 96:
-        case 97:
-        case 98:
-          n5 = Statement();
-           n3 = new NodeChoice(n5, 1);
-          break;
-        default:
-          jj_la1[58] = jj_gen;
-          jj_consume_token(-1);
-          throw new ParseException();
-        }
-      }
-        n2.addNode(n3);
-    }
-     n2.nodes.trimToSize();
-    n7 = jj_consume_token(62);
-            n6 = JTBToolkit.makeNodeToken(n7);
-     {if (true) return new CompoundStatement(n0,n2,n6);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public SelectionStatement SelectionStatement() throws ParseException {
-   NodeChoice n0;
-   NodeSequence n1;
-   NodeToken n2;
-   Token n3;
-   NodeToken n4;
-   Token n5;
-   Expression n6;
-   NodeToken n7;
-   Token n8;
-   Statement n9;
-   NodeOptional n10 = new NodeOptional();
-   NodeSequence n11;
-   NodeToken n12;
-   Token n13;
-   Statement n14;
-   NodeSequence n15;
-   NodeToken n16;
-   Token n17;
-   NodeToken n18;
-   Token n19;
-   Expression n20;
-   NodeToken n21;
-   Token n22;
-   Statement n23;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case IF:
-           n1 = new NodeSequence(6);
-      n3 = jj_consume_token(IF);
-                   n2 = JTBToolkit.makeNodeToken(n3);
-           n1.addNode(n2);
-      n5 = jj_consume_token(55);
-                  n4 = JTBToolkit.makeNodeToken(n5);
-           n1.addNode(n4);
-      n6 = Expression();
-           n1.addNode(n6);
-      n8 = jj_consume_token(56);
-                  n7 = JTBToolkit.makeNodeToken(n8);
-           n1.addNode(n7);
-      n9 = Statement();
-           n1.addNode(n9);
-      if (jj_2_12(2)) {
-              n11 = new NodeSequence(2);
-        n13 = jj_consume_token(ELSE);
-                         n12 = JTBToolkit.makeNodeToken(n13);
-              n11.addNode(n12);
-        n14 = Statement();
-              n11.addNode(n14);
-              n10.addNode(n11);
-      } else {
-        ;
-      }
-           n1.addNode(n10);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case SWITCH:
-           n15 = new NodeSequence(5);
-      n17 = jj_consume_token(SWITCH);
-                        n16 = JTBToolkit.makeNodeToken(n17);
-           n15.addNode(n16);
-      n19 = jj_consume_token(55);
-                   n18 = JTBToolkit.makeNodeToken(n19);
-           n15.addNode(n18);
-      n20 = Expression();
-           n15.addNode(n20);
-      n22 = jj_consume_token(56);
-                   n21 = JTBToolkit.makeNodeToken(n22);
-           n15.addNode(n21);
-      n23 = Statement();
-           n15.addNode(n23);
-           n0 = new NodeChoice(n15, 1);
-      break;
-    default:
-      jj_la1[59] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new SelectionStatement(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public IterationStatement IterationStatement() throws ParseException {
-   NodeChoice n0;
-   NodeSequence n1;
-   NodeToken n2;
-   Token n3;
-   NodeToken n4;
-   Token n5;
-   Expression n6;
-   NodeToken n7;
-   Token n8;
-   Statement n9;
-   NodeSequence n10;
-   NodeToken n11;
-   Token n12;
-   Statement n13;
-   NodeToken n14;
-   Token n15;
-   NodeToken n16;
-   Token n17;
-   Expression n18;
-   NodeToken n19;
-   Token n20;
-   NodeToken n21;
-   Token n22;
-   NodeSequence n23;
-   NodeToken n24;
-   Token n25;
-   NodeToken n26;
-   Token n27;
-   NodeOptional n28 = new NodeOptional();
-   Expression n29;
-   NodeToken n30;
-   Token n31;
-   NodeOptional n32 = new NodeOptional();
-   Expression n33;
-   NodeToken n34;
-   Token n35;
-   NodeOptional n36 = new NodeOptional();
-   Expression n37;
-   NodeToken n38;
-   Token n39;
-   Statement n40;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case WHILE:
-           n1 = new NodeSequence(5);
-      n3 = jj_consume_token(WHILE);
-                      n2 = JTBToolkit.makeNodeToken(n3);
-           n1.addNode(n2);
-      n5 = jj_consume_token(55);
-                  n4 = JTBToolkit.makeNodeToken(n5);
-           n1.addNode(n4);
-      n6 = Expression();
-           n1.addNode(n6);
-      n8 = jj_consume_token(56);
-                  n7 = JTBToolkit.makeNodeToken(n8);
-           n1.addNode(n7);
-      n9 = Statement();
-           n1.addNode(n9);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case DO:
-           n10 = new NodeSequence(7);
-      n12 = jj_consume_token(DO);
-                    n11 = JTBToolkit.makeNodeToken(n12);
-           n10.addNode(n11);
-      n13 = Statement();
-           n10.addNode(n13);
-      n15 = jj_consume_token(WHILE);
-                       n14 = JTBToolkit.makeNodeToken(n15);
-           n10.addNode(n14);
-      n17 = jj_consume_token(55);
-                   n16 = JTBToolkit.makeNodeToken(n17);
-           n10.addNode(n16);
-      n18 = Expression();
-           n10.addNode(n18);
-      n20 = jj_consume_token(56);
-                   n19 = JTBToolkit.makeNodeToken(n20);
-           n10.addNode(n19);
-      n22 = jj_consume_token(57);
-                   n21 = JTBToolkit.makeNodeToken(n22);
-           n10.addNode(n21);
-           n0 = new NodeChoice(n10, 1);
-      break;
-    case FOR:
-           n23 = new NodeSequence(9);
-      n25 = jj_consume_token(FOR);
-                     n24 = JTBToolkit.makeNodeToken(n25);
-           n23.addNode(n24);
-      n27 = jj_consume_token(55);
-                   n26 = JTBToolkit.makeNodeToken(n27);
-           n23.addNode(n26);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-      case CHARACTER_LITERAL:
-      case STRING_LITERAL:
-      case SIZEOF:
-      case IDENTIFIER:
-      case 55:
-      case 58:
-      case 82:
-      case 91:
-      case 92:
-      case 95:
-      case 96:
-      case 97:
-      case 98:
-        n29 = Expression();
-              n28.addNode(n29);
-        break;
-      default:
-        jj_la1[60] = jj_gen;
-        ;
-      }
-           n23.addNode(n28);
-      n31 = jj_consume_token(57);
-                   n30 = JTBToolkit.makeNodeToken(n31);
-           n23.addNode(n30);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-      case CHARACTER_LITERAL:
-      case STRING_LITERAL:
-      case SIZEOF:
-      case IDENTIFIER:
-      case 55:
-      case 58:
-      case 82:
-      case 91:
-      case 92:
-      case 95:
-      case 96:
-      case 97:
-      case 98:
-        n33 = Expression();
-              n32.addNode(n33);
-        break;
-      default:
-        jj_la1[61] = jj_gen;
-        ;
-      }
-           n23.addNode(n32);
-      n35 = jj_consume_token(57);
-                   n34 = JTBToolkit.makeNodeToken(n35);
-           n23.addNode(n34);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-      case CHARACTER_LITERAL:
-      case STRING_LITERAL:
-      case SIZEOF:
-      case IDENTIFIER:
-      case 55:
-      case 58:
-      case 82:
-      case 91:
-      case 92:
-      case 95:
-      case 96:
-      case 97:
-      case 98:
-        n37 = Expression();
-              n36.addNode(n37);
-        break;
-      default:
-        jj_la1[62] = jj_gen;
-        ;
-      }
-           n23.addNode(n36);
-      n39 = jj_consume_token(56);
-                   n38 = JTBToolkit.makeNodeToken(n39);
-           n23.addNode(n38);
-      n40 = Statement();
-           n23.addNode(n40);
-           n0 = new NodeChoice(n23, 2);
-      break;
-    default:
-      jj_la1[63] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new IterationStatement(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public JumpStatement JumpStatement() throws ParseException {
-   NodeChoice n0;
-   NodeSequence n1;
-   NodeToken n2;
-   Token n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   NodeSequence n8;
-   NodeToken n9;
-   Token n10;
-   NodeToken n11;
-   Token n12;
-   NodeSequence n13;
-   NodeToken n14;
-   Token n15;
-   NodeToken n16;
-   Token n17;
-   NodeSequence n18;
-   NodeToken n19;
-   Token n20;
-   NodeOptional n21 = new NodeOptional();
-   Expression n22;
-   NodeToken n23;
-   Token n24;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case GOTO:
-           n1 = new NodeSequence(3);
-      n3 = jj_consume_token(GOTO);
-                     n2 = JTBToolkit.makeNodeToken(n3);
-           n1.addNode(n2);
-      n5 = jj_consume_token(IDENTIFIER);
-                           n4 = JTBToolkit.makeNodeToken(n5);
-           n1.addNode(n4);
-      n7 = jj_consume_token(57);
-                  n6 = JTBToolkit.makeNodeToken(n7);
-           n1.addNode(n6);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case CONTINUE:
-           n8 = new NodeSequence(2);
-      n10 = jj_consume_token(CONTINUE);
-                          n9 = JTBToolkit.makeNodeToken(n10);
-           n8.addNode(n9);
-      n12 = jj_consume_token(57);
-                   n11 = JTBToolkit.makeNodeToken(n12);
-           n8.addNode(n11);
-           n0 = new NodeChoice(n8, 1);
-      break;
-    case BREAK:
-           n13 = new NodeSequence(2);
-      n15 = jj_consume_token(BREAK);
-                       n14 = JTBToolkit.makeNodeToken(n15);
-           n13.addNode(n14);
-      n17 = jj_consume_token(57);
-                   n16 = JTBToolkit.makeNodeToken(n17);
-           n13.addNode(n16);
-           n0 = new NodeChoice(n13, 2);
-      break;
-    case RETURN:
-           n18 = new NodeSequence(3);
-      n20 = jj_consume_token(RETURN);
-                        n19 = JTBToolkit.makeNodeToken(n20);
-           n18.addNode(n19);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-      case CHARACTER_LITERAL:
-      case STRING_LITERAL:
-      case SIZEOF:
-      case IDENTIFIER:
-      case 55:
-      case 58:
-      case 82:
-      case 91:
-      case 92:
-      case 95:
-      case 96:
-      case 97:
-      case 98:
-        n22 = Expression();
-              n21.addNode(n22);
-        break;
-      default:
-        jj_la1[64] = jj_gen;
-        ;
-      }
-           n18.addNode(n21);
-      n24 = jj_consume_token(57);
-                   n23 = JTBToolkit.makeNodeToken(n24);
-           n18.addNode(n23);
-           n0 = new NodeChoice(n18, 3);
-      break;
-    default:
-      jj_la1[65] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new JumpStatement(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public Expression Expression() throws ParseException {
-   AssignmentExpression n0;
-   NodeListOptional n1 = new NodeListOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   AssignmentExpression n5;
-    n0 = AssignmentExpression();
-    label_11:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 59:
-        ;
-        break;
-      default:
-        jj_la1[66] = jj_gen;
-        break label_11;
-      }
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(59);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = AssignmentExpression();
-        n2.addNode(n5);
-        n1.addNode(n2);
-    }
-     n1.nodes.trimToSize();
-     {if (true) return new Expression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public AssignmentExpression AssignmentExpression() throws ParseException {
-   NodeChoice n0;
-   NodeSequence n1;
-   UnaryExpression n2;
-   AssignmentOperator n3;
-   AssignmentExpression n4;
-   ConditionalExpression n5;
-    if (jj_2_13(2147483647)) {
-        n1 = new NodeSequence(4);
-      n2 = UnaryExpression();
-        n1.addNode(n2);
-      n3 = AssignmentOperator();
-        n1.addNode(n3);
-      n4 = AssignmentExpression();
-        n1.addNode(n4);
-        n0 = new NodeChoice(n1, 0);
-    } else if (jj_2_14(3)) {
-      n5 = ConditionalExpression();
-        n0 = new NodeChoice(n5, 1);
-    } else {
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new AssignmentExpression(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public AssignmentOperator AssignmentOperator() throws ParseException {
-   NodeChoice n0;
-   NodeToken n1;
-   Token n2;
-   NodeToken n3;
-   Token n4;
-   NodeToken n5;
-   Token n6;
-   NodeToken n7;
-   Token n8;
-   NodeToken n9;
-   Token n10;
-   NodeToken n11;
-   Token n12;
-   NodeToken n13;
-   Token n14;
-   NodeToken n15;
-   Token n16;
-   NodeToken n17;
-   Token n18;
-   NodeToken n19;
-   Token n20;
-   NodeToken n21;
-   Token n22;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 63:
-      n2 = jj_consume_token(63);
-                  n1 = JTBToolkit.makeNodeToken(n2);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case 67:
-      n4 = jj_consume_token(67);
-                   n3 = JTBToolkit.makeNodeToken(n4);
-           n0 = new NodeChoice(n3, 1);
-      break;
-    case 68:
-      n6 = jj_consume_token(68);
-                   n5 = JTBToolkit.makeNodeToken(n6);
-           n0 = new NodeChoice(n5, 2);
-      break;
-    case 69:
-      n8 = jj_consume_token(69);
-                   n7 = JTBToolkit.makeNodeToken(n8);
-           n0 = new NodeChoice(n7, 3);
-      break;
-    case 70:
-      n10 = jj_consume_token(70);
-                    n9 = JTBToolkit.makeNodeToken(n10);
-           n0 = new NodeChoice(n9, 4);
-      break;
-    case 71:
-      n12 = jj_consume_token(71);
-                    n11 = JTBToolkit.makeNodeToken(n12);
-           n0 = new NodeChoice(n11, 5);
-      break;
-    case 72:
-      n14 = jj_consume_token(72);
-                     n13 = JTBToolkit.makeNodeToken(n14);
-           n0 = new NodeChoice(n13, 6);
-      break;
-    case 73:
-      n16 = jj_consume_token(73);
-                     n15 = JTBToolkit.makeNodeToken(n16);
-           n0 = new NodeChoice(n15, 7);
-      break;
-    case 74:
-      n18 = jj_consume_token(74);
-                    n17 = JTBToolkit.makeNodeToken(n18);
-           n0 = new NodeChoice(n17, 8);
-      break;
-    case 75:
-      n20 = jj_consume_token(75);
-                    n19 = JTBToolkit.makeNodeToken(n20);
-           n0 = new NodeChoice(n19, 9);
-      break;
-    case 76:
-      n22 = jj_consume_token(76);
-                    n21 = JTBToolkit.makeNodeToken(n22);
-           n0 = new NodeChoice(n21, 10);
-      break;
-    default:
-      jj_la1[67] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new AssignmentOperator(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ConditionalExpression ConditionalExpression() throws ParseException {
-   LogicalORExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   Expression n5;
-   NodeToken n6;
-   Token n7;
-   ConditionalExpression n8;
-    n0 = LogicalORExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 77:
-        n2 = new NodeSequence(4);
-      n4 = jj_consume_token(77);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = Expression();
-        n2.addNode(n5);
-      n7 = jj_consume_token(64);
-               n6 = JTBToolkit.makeNodeToken(n7);
-        n2.addNode(n6);
-      n8 = ConditionalExpression();
-        n2.addNode(n8);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[68] = jj_gen;
-      ;
-    }
-     {if (true) return new ConditionalExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ConstantExpression ConstantExpression() throws ParseException {
-   ConditionalExpression n0;
-    n0 = ConditionalExpression();
-     {if (true) return new ConstantExpression(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public LogicalORExpression LogicalORExpression() throws ParseException {
-   LogicalANDExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   LogicalORExpression n5;
-    n0 = LogicalANDExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 78:
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(78);
-                n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = LogicalORExpression();
-        n2.addNode(n5);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[69] = jj_gen;
-      ;
-    }
-     {if (true) return new LogicalORExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public LogicalANDExpression LogicalANDExpression() throws ParseException {
-   InclusiveORExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   LogicalANDExpression n5;
-    n0 = InclusiveORExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 79:
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(79);
-                n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = LogicalANDExpression();
-        n2.addNode(n5);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[70] = jj_gen;
-      ;
-    }
-     {if (true) return new LogicalANDExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public InclusiveORExpression InclusiveORExpression() throws ParseException {
-   ExclusiveORExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   InclusiveORExpression n5;
-    n0 = ExclusiveORExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 80:
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(80);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = InclusiveORExpression();
-        n2.addNode(n5);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[71] = jj_gen;
-      ;
-    }
-     {if (true) return new InclusiveORExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ExclusiveORExpression ExclusiveORExpression() throws ParseException {
-   ANDExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   ExclusiveORExpression n5;
-    n0 = ANDExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 81:
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(81);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = ExclusiveORExpression();
-        n2.addNode(n5);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[72] = jj_gen;
-      ;
-    }
-     {if (true) return new ExclusiveORExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ANDExpression ANDExpression() throws ParseException {
-   EqualityExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   ANDExpression n5;
-    n0 = EqualityExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 82:
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(82);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = ANDExpression();
-        n2.addNode(n5);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[73] = jj_gen;
-      ;
-    }
-     {if (true) return new ANDExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public EqualityExpression EqualityExpression() throws ParseException {
-   RelationalExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeChoice n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   EqualityExpression n8;
-    n0 = RelationalExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 83:
-    case 84:
-        n2 = new NodeSequence(2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 83:
-        n5 = jj_consume_token(83);
-                      n4 = JTBToolkit.makeNodeToken(n5);
-              n3 = new NodeChoice(n4, 0);
-        break;
-      case 84:
-        n7 = jj_consume_token(84);
-                      n6 = JTBToolkit.makeNodeToken(n7);
-              n3 = new NodeChoice(n6, 1);
-        break;
-      default:
-        jj_la1[74] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n2.addNode(n3);
-      n8 = EqualityExpression();
-        n2.addNode(n8);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[75] = jj_gen;
-      ;
-    }
-     {if (true) return new EqualityExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public RelationalExpression RelationalExpression() throws ParseException {
-   ShiftExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeChoice n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   NodeToken n8;
-   Token n9;
-   NodeToken n10;
-   Token n11;
-   RelationalExpression n12;
-    n0 = ShiftExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 85:
-    case 86:
-    case 87:
-    case 88:
-        n2 = new NodeSequence(2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 85:
-        n5 = jj_consume_token(85);
-                     n4 = JTBToolkit.makeNodeToken(n5);
-              n3 = new NodeChoice(n4, 0);
-        break;
-      case 86:
-        n7 = jj_consume_token(86);
-                     n6 = JTBToolkit.makeNodeToken(n7);
-              n3 = new NodeChoice(n6, 1);
-        break;
-      case 87:
-        n9 = jj_consume_token(87);
-                      n8 = JTBToolkit.makeNodeToken(n9);
-              n3 = new NodeChoice(n8, 2);
-        break;
-      case 88:
-        n11 = jj_consume_token(88);
-                       n10 = JTBToolkit.makeNodeToken(n11);
-              n3 = new NodeChoice(n10, 3);
-        break;
-      default:
-        jj_la1[76] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n2.addNode(n3);
-      n12 = RelationalExpression();
-        n2.addNode(n12);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[77] = jj_gen;
-      ;
-    }
-     {if (true) return new RelationalExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ShiftExpression ShiftExpression() throws ParseException {
-   AdditiveExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeChoice n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   ShiftExpression n8;
-    n0 = AdditiveExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 89:
-    case 90:
-        n2 = new NodeSequence(2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 89:
-        n5 = jj_consume_token(89);
-                      n4 = JTBToolkit.makeNodeToken(n5);
-              n3 = new NodeChoice(n4, 0);
-        break;
-      case 90:
-        n7 = jj_consume_token(90);
-                      n6 = JTBToolkit.makeNodeToken(n7);
-              n3 = new NodeChoice(n6, 1);
-        break;
-      default:
-        jj_la1[78] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n2.addNode(n3);
-      n8 = ShiftExpression();
-        n2.addNode(n8);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[79] = jj_gen;
-      ;
-    }
-     {if (true) return new ShiftExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public AdditiveExpression AdditiveExpression() throws ParseException {
-   MultiplicativeExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeChoice n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   AdditiveExpression n8;
-    n0 = MultiplicativeExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 91:
-    case 92:
-        n2 = new NodeSequence(2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 91:
-        n5 = jj_consume_token(91);
-                     n4 = JTBToolkit.makeNodeToken(n5);
-              n3 = new NodeChoice(n4, 0);
-        break;
-      case 92:
-        n7 = jj_consume_token(92);
-                     n6 = JTBToolkit.makeNodeToken(n7);
-              n3 = new NodeChoice(n6, 1);
-        break;
-      default:
-        jj_la1[80] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n2.addNode(n3);
-      n8 = AdditiveExpression();
-        n2.addNode(n8);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[81] = jj_gen;
-      ;
-    }
-     {if (true) return new AdditiveExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public MultiplicativeExpression MultiplicativeExpression() throws ParseException {
-   CastExpression n0;
-   NodeOptional n1 = new NodeOptional();
-   NodeSequence n2;
-   NodeChoice n3;
-   NodeToken n4;
-   Token n5;
-   NodeToken n6;
-   Token n7;
-   NodeToken n8;
-   Token n9;
-   MultiplicativeExpression n10;
-    n0 = CastExpression();
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 58:
-    case 93:
-    case 94:
-        n2 = new NodeSequence(2);
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 58:
-        n5 = jj_consume_token(58);
-                     n4 = JTBToolkit.makeNodeToken(n5);
-              n3 = new NodeChoice(n4, 0);
-        break;
-      case 93:
-        n7 = jj_consume_token(93);
-                     n6 = JTBToolkit.makeNodeToken(n7);
-              n3 = new NodeChoice(n6, 1);
-        break;
-      case 94:
-        n9 = jj_consume_token(94);
-                     n8 = JTBToolkit.makeNodeToken(n9);
-              n3 = new NodeChoice(n8, 2);
-        break;
-      default:
-        jj_la1[82] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n2.addNode(n3);
-      n10 = MultiplicativeExpression();
-        n2.addNode(n10);
-        n1.addNode(n2);
-      break;
-    default:
-      jj_la1[83] = jj_gen;
-      ;
-    }
-     {if (true) return new MultiplicativeExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public CastExpression CastExpression() throws ParseException {
-   NodeChoice n0;
-   NodeSequence n1;
-   NodeToken n2;
-   Token n3;
-   TypeSpecifier n4;
-   NodeToken n5;
-   Token n6;
-   CastExpression n7;
-   UnaryExpression n8;
-    if (jj_2_15(2147483647)) {
-           n1 = new NodeSequence(5);
-      n3 = jj_consume_token(55);
-                  n2 = JTBToolkit.makeNodeToken(n3);
-           n1.addNode(n2);
-      n4 = TypeSpecifier();
-           n1.addNode(n4);
-      n6 = jj_consume_token(56);
-                  n5 = JTBToolkit.makeNodeToken(n6);
-           n1.addNode(n5);
-      n7 = CastExpression();
-           n1.addNode(n7);
-           n0 = new NodeChoice(n1, 0);
-    } else {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-      case CHARACTER_LITERAL:
-      case STRING_LITERAL:
-      case SIZEOF:
-      case IDENTIFIER:
-      case 55:
-      case 58:
-      case 82:
-      case 91:
-      case 92:
-      case 95:
-      case 96:
-      case 97:
-      case 98:
-        n8 = UnaryExpression();
-           n0 = new NodeChoice(n8, 1);
-        break;
-      default:
-        jj_la1[84] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-    }
-     {if (true) return new CastExpression(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public UnaryExpression UnaryExpression() throws ParseException {
-   NodeChoice n0;
-   PostfixExpression n1;
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   UnaryExpression n5;
-   NodeSequence n6;
-   NodeToken n7;
-   Token n8;
-   UnaryExpression n9;
-   NodeSequence n10;
-   UnaryOperator n11;
-   CastExpression n12;
-   NodeSequence n13;
-   NodeToken n14;
-   Token n15;
-   NodeChoice n16;
-   UnaryExpression n17;
-   NodeSequence n18;
-   NodeToken n19;
-   Token n20;
-   TypeSpecifier n21;
-   NodeToken n22;
-   Token n23;
-    if (jj_2_17(3)) {
-      n1 = PostfixExpression();
-           n0 = new NodeChoice(n1, 0);
-    } else {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 95:
-           n2 = new NodeSequence(2);
-        n4 = jj_consume_token(95);
-                   n3 = JTBToolkit.makeNodeToken(n4);
-           n2.addNode(n3);
-        n5 = UnaryExpression();
-           n2.addNode(n5);
-           n0 = new NodeChoice(n2, 1);
-        break;
-      case 96:
-           n6 = new NodeSequence(2);
-        n8 = jj_consume_token(96);
-                   n7 = JTBToolkit.makeNodeToken(n8);
-           n6.addNode(n7);
-        n9 = UnaryExpression();
-           n6.addNode(n9);
-           n0 = new NodeChoice(n6, 2);
-        break;
-      case 58:
-      case 82:
-      case 91:
-      case 92:
-      case 97:
-      case 98:
-           n10 = new NodeSequence(2);
-        n11 = UnaryOperator();
-           n10.addNode(n11);
-        n12 = CastExpression();
-           n10.addNode(n12);
-           n0 = new NodeChoice(n10, 3);
-        break;
-      case SIZEOF:
-           n13 = new NodeSequence(2);
-        n15 = jj_consume_token(SIZEOF);
-                        n14 = JTBToolkit.makeNodeToken(n15);
-           n13.addNode(n14);
-        if (jj_2_16(2147483647)) {
-          n17 = UnaryExpression();
-                 n16 = new NodeChoice(n17, 0);
-        } else {
-          switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-          case 55:
-                 n18 = new NodeSequence(3);
-            n20 = jj_consume_token(55);
-                         n19 = JTBToolkit.makeNodeToken(n20);
-                 n18.addNode(n19);
-            n21 = TypeSpecifier();
-                 n18.addNode(n21);
-            n23 = jj_consume_token(56);
-                         n22 = JTBToolkit.makeNodeToken(n23);
-                 n18.addNode(n22);
-                 n16 = new NodeChoice(n18, 1);
-            break;
-          default:
-            jj_la1[85] = jj_gen;
-            jj_consume_token(-1);
-            throw new ParseException();
-          }
-        }
-           n13.addNode(n16);
-           n0 = new NodeChoice(n13, 4);
-        break;
-      default:
-        jj_la1[86] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-    }
-     {if (true) return new UnaryExpression(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public UnaryOperator UnaryOperator() throws ParseException {
-   NodeChoice n0;
-   NodeToken n1;
-   Token n2;
-   NodeToken n3;
-   Token n4;
-   NodeToken n5;
-   Token n6;
-   NodeToken n7;
-   Token n8;
-   NodeToken n9;
-   Token n10;
-   NodeToken n11;
-   Token n12;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case 82:
-      n2 = jj_consume_token(82);
-                  n1 = JTBToolkit.makeNodeToken(n2);
-           n0 = new NodeChoice(n1, 0);
-      break;
-    case 58:
-      n4 = jj_consume_token(58);
-                  n3 = JTBToolkit.makeNodeToken(n4);
-           n0 = new NodeChoice(n3, 1);
-      break;
-    case 91:
-      n6 = jj_consume_token(91);
-                  n5 = JTBToolkit.makeNodeToken(n6);
-           n0 = new NodeChoice(n5, 2);
-      break;
-    case 92:
-      n8 = jj_consume_token(92);
-                  n7 = JTBToolkit.makeNodeToken(n8);
-           n0 = new NodeChoice(n7, 3);
-      break;
-    case 97:
-      n10 = jj_consume_token(97);
-                   n9 = JTBToolkit.makeNodeToken(n10);
-           n0 = new NodeChoice(n9, 4);
-      break;
-    case 98:
-      n12 = jj_consume_token(98);
-                   n11 = JTBToolkit.makeNodeToken(n12);
-           n0 = new NodeChoice(n11, 5);
-      break;
-    default:
-      jj_la1[87] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new UnaryOperator(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public PostfixExpression PostfixExpression() throws ParseException {
-   PrimaryExpression n0;
-   NodeListOptional n1 = new NodeListOptional();
-   NodeChoice n2;
-   NodeSequence n3;
-   NodeToken n4;
-   Token n5;
-   Expression n6;
-   NodeToken n7;
-   Token n8;
-   NodeSequence n9;
-   NodeToken n10;
-   Token n11;
-   NodeOptional n12;
-   ArgumentExpressionList n13;
-   NodeToken n14;
-   Token n15;
-   NodeSequence n16;
-   NodeToken n17;
-   Token n18;
-   NodeToken n19;
-   Token n20;
-   NodeSequence n21;
-   NodeToken n22;
-   Token n23;
-   NodeToken n24;
-   Token n25;
-   NodeToken n26;
-   Token n27;
-   NodeToken n28;
-   Token n29;
-    n0 = PrimaryExpression();
-    label_12:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 55:
-      case 65:
-      case 95:
-      case 96:
-      case 99:
-      case 100:
-        ;
-        break;
-      default:
-        jj_la1[88] = jj_gen;
-        break label_12;
-      }
-        n12 = new NodeOptional();
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 65:
-           n3 = new NodeSequence(3);
-        n5 = jj_consume_token(65);
-                  n4 = JTBToolkit.makeNodeToken(n5);
-           n3.addNode(n4);
-        n6 = Expression();
-           n3.addNode(n6);
-        n8 = jj_consume_token(66);
-                  n7 = JTBToolkit.makeNodeToken(n8);
-           n3.addNode(n7);
-           n2 = new NodeChoice(n3, 0);
-        break;
-      case 55:
-           n9 = new NodeSequence(3);
-        n11 = jj_consume_token(55);
-                   n10 = JTBToolkit.makeNodeToken(n11);
-           n9.addNode(n10);
-        if (jj_2_18(2147483647)) {
-          n13 = ArgumentExpressionList();
-              n12.addNode(n13);
-        } else {
-          ;
-        }
-           n9.addNode(n12);
-        n15 = jj_consume_token(56);
-                   n14 = JTBToolkit.makeNodeToken(n15);
-           n9.addNode(n14);
-           n2 = new NodeChoice(n9, 1);
-        break;
-      case 99:
-           n16 = new NodeSequence(2);
-        n18 = jj_consume_token(99);
-                   n17 = JTBToolkit.makeNodeToken(n18);
-           n16.addNode(n17);
-        n20 = jj_consume_token(IDENTIFIER);
-                            n19 = JTBToolkit.makeNodeToken(n20);
-           n16.addNode(n19);
-           n2 = new NodeChoice(n16, 2);
-        break;
-      case 100:
-           n21 = new NodeSequence(2);
-        n23 = jj_consume_token(100);
-                    n22 = JTBToolkit.makeNodeToken(n23);
-           n21.addNode(n22);
-        n25 = jj_consume_token(IDENTIFIER);
-                            n24 = JTBToolkit.makeNodeToken(n25);
-           n21.addNode(n24);
-           n2 = new NodeChoice(n21, 3);
-        break;
-      case 95:
-        n27 = jj_consume_token(95);
-                    n26 = JTBToolkit.makeNodeToken(n27);
-           n2 = new NodeChoice(n26, 4);
-        break;
-      case 96:
-        n29 = jj_consume_token(96);
-                    n28 = JTBToolkit.makeNodeToken(n29);
-           n2 = new NodeChoice(n28, 5);
-        break;
-      default:
-        jj_la1[89] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
-      }
-        n1.addNode(n2);
-    }
-     n1.nodes.trimToSize();
-     {if (true) return new PostfixExpression(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public PrimaryExpression PrimaryExpression() throws ParseException {
-   NodeChoice n0;
-   NodeToken n1;
-   Token n2;
-   Constant n3;
-   NodeSequence n4;
-   NodeToken n5;
-   Token n6;
-   Expression n7;
-   NodeToken n8;
-   Token n9;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case IDENTIFIER:
-      n2 = jj_consume_token(IDENTIFIER);
-                        n1 = JTBToolkit.makeNodeToken(n2);
-        n0 = new NodeChoice(n1, 0);
-      break;
-    case INTEGER_LITERAL:
-    case FLOATING_POINT_LITERAL:
-    case CHARACTER_LITERAL:
-    case STRING_LITERAL:
-      n3 = Constant();
-        n0 = new NodeChoice(n3, 1);
-      break;
-    case 55:
-        n4 = new NodeSequence(3);
-      n6 = jj_consume_token(55);
-               n5 = JTBToolkit.makeNodeToken(n6);
-        n4.addNode(n5);
-      n7 = Expression();
-        n4.addNode(n7);
-      n9 = jj_consume_token(56);
-               n8 = JTBToolkit.makeNodeToken(n9);
-        n4.addNode(n8);
-        n0 = new NodeChoice(n4, 2);
-      break;
-    default:
-      jj_la1[90] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new PrimaryExpression(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public ArgumentExpressionList ArgumentExpressionList() throws ParseException {
-   AssignmentOrTypeExpression n0;
-   NodeListOptional n1 = new NodeListOptional();
-   NodeSequence n2;
-   NodeToken n3;
-   Token n4;
-   AssignmentOrTypeExpression n5;
-    n0 = AssignmentOrTypeExpression();
-    label_13:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case 59:
-        ;
-        break;
-      default:
-        jj_la1[91] = jj_gen;
-        break label_13;
-      }
-        n2 = new NodeSequence(2);
-      n4 = jj_consume_token(59);
-               n3 = JTBToolkit.makeNodeToken(n4);
-        n2.addNode(n3);
-      n5 = AssignmentOrTypeExpression();
-        n2.addNode(n5);
-        n1.addNode(n2);
-    }
-     n1.nodes.trimToSize();
-     {if (true) return new ArgumentExpressionList(n0,n1);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public AssignmentOrTypeExpression AssignmentOrTypeExpression() throws ParseException {
-   NodeChoice n0;
-   NoIdentifierTypeSpecifier n1;
-   AssignmentExpression n2;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case UNSIGNED:
-    case DOUBLE:
-    case STRUCT:
-    case SIGNED:
-    case UNION:
-    case CONST:
-    case FLOAT:
-    case SHORT:
-    case LONG:
-    case ENUM:
-    case VOID:
-    case CHAR:
-    case INT:
-      n1 = NoIdentifierTypeSpecifier();
-        n0 = new NodeChoice(n1, 0);
-      break;
-    case INTEGER_LITERAL:
-    case FLOATING_POINT_LITERAL:
-    case CHARACTER_LITERAL:
-    case STRING_LITERAL:
-    case SIZEOF:
-    case IDENTIFIER:
-    case 55:
-    case 58:
-    case 82:
-    case 91:
-    case 92:
-    case 95:
-    case 96:
-    case 97:
-    case 98:
-      n2 = AssignmentExpression();
-        n0 = new NodeChoice(n2, 1);
-      break;
-    default:
-      jj_la1[92] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new AssignmentOrTypeExpression(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  final public Constant Constant() throws ParseException {
-   NodeChoice n0;
-   NodeToken n1;
-   Token n2;
-   NodeToken n3;
-   Token n4;
-   NodeToken n5;
-   Token n6;
-   NodeToken n7;
-   Token n8;
-    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-    case INTEGER_LITERAL:
-      n2 = jj_consume_token(INTEGER_LITERAL);
-                             n1 = JTBToolkit.makeNodeToken(n2);
-        n0 = new NodeChoice(n1, 0);
-      break;
-    case FLOATING_POINT_LITERAL:
-      n4 = jj_consume_token(FLOATING_POINT_LITERAL);
-                                    n3 = JTBToolkit.makeNodeToken(n4);
-        n0 = new NodeChoice(n3, 1);
-      break;
-    case CHARACTER_LITERAL:
-      n6 = jj_consume_token(CHARACTER_LITERAL);
-                               n5 = JTBToolkit.makeNodeToken(n6);
-        n0 = new NodeChoice(n5, 2);
-      break;
-    case STRING_LITERAL:
-      n8 = jj_consume_token(STRING_LITERAL);
-                            n7 = JTBToolkit.makeNodeToken(n8);
-        n0 = new NodeChoice(n7, 3);
-      break;
-    default:
-      jj_la1[93] = jj_gen;
-      jj_consume_token(-1);
-      throw new ParseException();
-    }
-     {if (true) return new Constant(n0);}
-    throw new Error("Missing return statement in function");
-  }
-
-  private boolean jj_2_1(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_1(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(0, xla); }
-  }
-
-  private boolean jj_2_2(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_2(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(1, xla); }
-  }
-
-  private boolean jj_2_3(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_3(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(2, xla); }
-  }
-
-  private boolean jj_2_4(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_4(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(3, xla); }
-  }
-
-  private boolean jj_2_5(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_5(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(4, xla); }
-  }
-
-  private boolean jj_2_6(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_6(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(5, xla); }
-  }
-
-  private boolean jj_2_7(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_7(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(6, xla); }
-  }
-
-  private boolean jj_2_8(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_8(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(7, xla); }
-  }
-
-  private boolean jj_2_9(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_9(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(8, xla); }
-  }
-
-  private boolean jj_2_10(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_10(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(9, xla); }
-  }
-
-  private boolean jj_2_11(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_11(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(10, xla); }
-  }
-
-  private boolean jj_2_12(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_12(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(11, xla); }
-  }
-
-  private boolean jj_2_13(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_13(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(12, xla); }
-  }
-
-  private boolean jj_2_14(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_14(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(13, xla); }
-  }
-
-  private boolean jj_2_15(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_15(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(14, xla); }
-  }
-
-  private boolean jj_2_16(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_16(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(15, xla); }
-  }
-
-  private boolean jj_2_17(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_17(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(16, xla); }
-  }
-
-  private boolean jj_2_18(int xla) {
-    jj_la = xla; jj_lastpos = jj_scanpos = token;
-    try { return !jj_3_18(); }
-    catch(LookaheadSuccess ls) { return true; }
-    finally { jj_save(17, xla); }
-  }
-
-  private boolean jj_3R_113() {
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_32()) return true;
-    if (jj_scan_token(56)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_192() {
-    if (jj_scan_token(DOUBLE)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_168() {
-    if (jj_3R_123()) return true;
-    return false;
-  }
-
-  private boolean jj_3_6() {
-    if (jj_scan_token(59)) return true;
-    if (jj_3R_19()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_191() {
-    if (jj_scan_token(FLOAT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_112() {
-    if (jj_3R_29()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_203() {
-    if (jj_scan_token(LONG)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_167() {
-    if (jj_scan_token(CONST)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_97() {
-    if (jj_3R_19()) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3_6()) { jj_scanpos = xsp; break; }
-    }
-    xsp = jj_scanpos;
-    if (jj_3R_136()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_123() {
-    if (jj_scan_token(58)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_167()) jj_scanpos = xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_168()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_190() {
-    if (jj_scan_token(LONG)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_203()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_63() {
-    if (jj_scan_token(SIZEOF)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_112()) {
-    jj_scanpos = xsp;
-    if (jj_3R_113()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_161() {
-    if (jj_scan_token(79)) return true;
-    if (jj_3R_114()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_189() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_202() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_114() {
-    if (jj_3R_160()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_161()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_62() {
-    if (jj_3R_111()) return true;
-    if (jj_3R_33()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_188() {
-    if (jj_scan_token(SHORT)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_202()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_61() {
-    if (jj_scan_token(96)) return true;
-    if (jj_3R_29()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_187() {
-    if (jj_scan_token(CHAR)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_142() {
-    if (jj_3R_97()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_186() {
-    if (jj_scan_token(VOID)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_104() {
-    if (jj_scan_token(63)) return true;
-    if (jj_3R_106()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_60() {
-    if (jj_scan_token(95)) return true;
-    if (jj_3R_29()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_47() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_104()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3_17() {
-    if (jj_3R_34()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_185() {
-    if (jj_scan_token(CONST)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_102() {
-    if (jj_3R_32()) return true;
-    if (jj_scan_token(55)) return true;
-    if (jj_scan_token(58)) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    if (jj_scan_token(56)) return true;
-    if (jj_scan_token(55)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_142()) jj_scanpos = xsp;
-    if (jj_scan_token(56)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_115() {
-    if (jj_scan_token(78)) return true;
-    if (jj_3R_75()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_172() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_185()) jj_scanpos = xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_186()) {
-    jj_scanpos = xsp;
-    if (jj_3R_187()) {
-    jj_scanpos = xsp;
-    if (jj_3R_188()) {
-    jj_scanpos = xsp;
-    if (jj_3R_189()) {
-    jj_scanpos = xsp;
-    if (jj_3R_190()) {
-    jj_scanpos = xsp;
-    if (jj_3R_191()) {
-    jj_scanpos = xsp;
-    if (jj_3R_192()) {
-    jj_scanpos = xsp;
-    if (jj_3R_193()) {
-    jj_scanpos = xsp;
-    if (jj_3R_194()) {
-    jj_scanpos = xsp;
-    if (jj_3R_195()) return true;
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    xsp = jj_scanpos;
-    if (jj_3R_196()) jj_scanpos = xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_197()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_75() {
-    if (jj_3R_114()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_115()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_146() {
-    if (jj_scan_token(SWITCH)) return true;
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_116()) return true;
-    if (jj_scan_token(56)) return true;
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_29() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3_17()) {
-    jj_scanpos = xsp;
-    if (jj_3R_60()) {
-    jj_scanpos = xsp;
-    if (jj_3R_61()) {
-    jj_scanpos = xsp;
-    if (jj_3R_62()) {
-    jj_scanpos = xsp;
-    if (jj_3R_63()) return true;
-    }
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3_12() {
-    if (jj_scan_token(ELSE)) return true;
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_48() {
-    if (jj_scan_token(59)) return true;
-    if (jj_3R_47()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_106() {
-    if (jj_3R_31()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_24() {
-    if (jj_3R_47()) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_48()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_18() {
-    if (jj_3R_15()) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_145() {
-    if (jj_scan_token(IF)) return true;
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_116()) return true;
-    if (jj_scan_token(56)) return true;
-    if (jj_3R_28()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3_12()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3_5() {
-    if (jj_3R_18()) return true;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_108() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_145()) {
-    jj_scanpos = xsp;
-    if (jj_3R_146()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_166() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_43() {
-    if (jj_3R_102()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_92() {
-    if (jj_3R_29()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_76() {
-    if (jj_scan_token(77)) return true;
-    if (jj_3R_116()) return true;
-    if (jj_scan_token(64)) return true;
-    if (jj_3R_31()) return true;
-    return false;
-  }
-
-  private boolean jj_3_15() {
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_32()) return true;
-    if (jj_scan_token(56)) return true;
-    if (jj_3R_33()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_42() {
-    if (jj_3R_18()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_31() {
-    if (jj_3R_75()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_76()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_23() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_91() {
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_32()) return true;
-    if (jj_scan_token(56)) return true;
-    if (jj_3R_33()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_17() {
-    if (jj_scan_token(TYPEDEF)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_42()) {
-    jj_scanpos = xsp;
-    if (jj_3R_43()) return true;
-    }
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3_8() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_23()) jj_scanpos = xsp;
-    if (jj_scan_token(61)) return true;
-    if (jj_3R_24()) return true;
-    if (jj_scan_token(62)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_33() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_91()) {
-    jj_scanpos = xsp;
-    if (jj_3R_92()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_122() {
-    if (jj_scan_token(ENUM)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3_8()) {
-    jj_scanpos = xsp;
-    if (jj_3R_166()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_74() {
-    if (jj_scan_token(76)) return true;
-    return false;
-  }
-
-  private boolean jj_3_11() {
-    if (jj_3R_27()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_73() {
-    if (jj_scan_token(75)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_90() {
-    if (jj_3R_124()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_72() {
-    if (jj_scan_token(74)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_175() {
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_71() {
-    if (jj_scan_token(73)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_89() {
-    if (jj_3R_123()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_70() {
-    if (jj_scan_token(72)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_174() {
-    if (jj_3R_27()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_88() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_69() {
-    if (jj_scan_token(71)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_244() {
-    if (jj_scan_token(94)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_87() {
-    if (jj_3R_122()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_137() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_174()) {
-    jj_scanpos = xsp;
-    if (jj_3R_175()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_68() {
-    if (jj_scan_token(70)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_243() {
-    if (jj_scan_token(93)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_86() {
-    if (jj_3R_15()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_179() {
-    if (jj_scan_token(LONG)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_67() {
-    if (jj_scan_token(69)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_242() {
-    if (jj_scan_token(58)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_98() {
-    if (jj_scan_token(61)) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_137()) { jj_scanpos = xsp; break; }
-    }
-    if (jj_scan_token(62)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_199() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_66() {
-    if (jj_scan_token(68)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_183() {
-    if (jj_scan_token(STRING_LITERAL)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_65() {
-    if (jj_scan_token(67)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_165() {
-    if (jj_scan_token(LONG)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_179()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_182() {
-    if (jj_scan_token(CHARACTER_LITERAL)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_38() {
-    if (jj_3R_98()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_64() {
-    if (jj_scan_token(63)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_239() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_242()) {
-    jj_scanpos = xsp;
-    if (jj_3R_243()) {
-    jj_scanpos = xsp;
-    if (jj_3R_244()) return true;
-    }
-    }
-    if (jj_3R_235()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_208() {
-    if (jj_scan_token(64)) return true;
-    if (jj_3R_106()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_164() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_181() {
-    if (jj_scan_token(FLOATING_POINT_LITERAL)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_37() {
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_207() {
-    if (jj_3R_124()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_178() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_180() {
-    if (jj_scan_token(INTEGER_LITERAL)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_235() {
-    if (jj_3R_33()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_239()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_198() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_207()) {
-    jj_scanpos = xsp;
-    if (jj_3R_208()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_30() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_64()) {
-    jj_scanpos = xsp;
-    if (jj_3R_65()) {
-    jj_scanpos = xsp;
-    if (jj_3R_66()) {
-    jj_scanpos = xsp;
-    if (jj_3R_67()) {
-    jj_scanpos = xsp;
-    if (jj_3R_68()) {
-    jj_scanpos = xsp;
-    if (jj_3R_69()) {
-    jj_scanpos = xsp;
-    if (jj_3R_70()) {
-    jj_scanpos = xsp;
-    if (jj_3R_71()) {
-    jj_scanpos = xsp;
-    if (jj_3R_72()) {
-    jj_scanpos = xsp;
-    if (jj_3R_73()) {
-    jj_scanpos = xsp;
-    if (jj_3R_74()) return true;
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_170() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_180()) {
-    jj_scanpos = xsp;
-    if (jj_3R_181()) {
-    jj_scanpos = xsp;
-    if (jj_3R_182()) {
-    jj_scanpos = xsp;
-    if (jj_3R_183()) return true;
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_163() {
-    if (jj_scan_token(SHORT)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_178()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_144() {
-    if (jj_3R_116()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_36() {
-    if (jj_3R_97()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_162() {
-    if (jj_scan_token(CHAR)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_103() {
-    if (jj_3R_32()) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_198()) jj_scanpos = xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_199()) jj_scanpos = xsp;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_107() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_144()) jj_scanpos = xsp;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_14() {
-    if (jj_3R_32()) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    if (jj_scan_token(55)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_36()) jj_scanpos = xsp;
-    if (jj_scan_token(56)) return true;
-    xsp = jj_scanpos;
-    if (jj_3R_37()) {
-    jj_scanpos = xsp;
-    if (jj_3R_38()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_121() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_162()) {
-    jj_scanpos = xsp;
-    if (jj_3R_163()) {
-    jj_scanpos = xsp;
-    if (jj_3R_164()) {
-    jj_scanpos = xsp;
-    if (jj_3R_165()) return true;
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_120() {
-    if (jj_scan_token(UNSIGNED)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_119() {
-    if (jj_scan_token(SIGNED)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_241() {
-    if (jj_scan_token(92)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_135() {
-    if (jj_3R_105()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_240() {
-    if (jj_scan_token(91)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_134() {
-    if (jj_3R_172()) return true;
-    return false;
-  }
-
-  private boolean jj_3_4() {
-    if (jj_3R_17()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_53() {
-    if (jj_scan_token(DFLT)) return true;
-    if (jj_scan_token(64)) return true;
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_95() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_134()) {
-    jj_scanpos = xsp;
-    if (jj_3R_135()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3_3() {
-    if (jj_3R_16()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_85() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_119()) {
-    jj_scanpos = xsp;
-    if (jj_3R_120()) return true;
-    }
-    xsp = jj_scanpos;
-    if (jj_3R_121()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_84() {
-    if (jj_scan_token(DOUBLE)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_236() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_240()) {
-    jj_scanpos = xsp;
-    if (jj_3R_241()) return true;
-    }
-    if (jj_3R_229()) return true;
-    return false;
-  }
-
-  private boolean jj_3_2() {
-    if (jj_3R_15()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_83() {
-    if (jj_scan_token(FLOAT)) return true;
-    return false;
-  }
-
-  private boolean jj_3_14() {
-    if (jj_3R_31()) return true;
-    return false;
-  }
-
-  private boolean jj_3_13() {
-    if (jj_3R_29()) return true;
-    if (jj_3R_30()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_141() {
-    if (jj_scan_token(63)) return true;
-    if (jj_3R_25()) return true;
-    return false;
-  }
-
-  private boolean jj_3_1() {
-    if (jj_3R_14()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_229() {
-    if (jj_3R_235()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_236()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_118() {
-    if (jj_scan_token(LONG)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_52() {
-    if (jj_scan_token(CASE)) return true;
-    if (jj_3R_106()) return true;
-    if (jj_scan_token(64)) return true;
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_140() {
-    if (jj_3R_124()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_143() {
-    if (jj_3R_29()) return true;
-    if (jj_3R_30()) return true;
-    if (jj_3R_105()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_82() {
-    if (jj_scan_token(LONG)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_118()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_100() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_140()) jj_scanpos = xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_141()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_96() {
-    if (jj_scan_token(59)) return true;
-    if (jj_3R_95()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_51() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    if (jj_scan_token(64)) return true;
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_81() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_105() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_143()) {
-    jj_scanpos = xsp;
-    if (jj_3_14()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_35() {
-    if (jj_3R_95()) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_96()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_117() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_26() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_51()) {
-    jj_scanpos = xsp;
-    if (jj_3R_52()) {
-    jj_scanpos = xsp;
-    if (jj_3R_53()) return true;
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_238() {
-    if (jj_scan_token(90)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_80() {
-    if (jj_scan_token(SHORT)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_117()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_237() {
-    if (jj_scan_token(89)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_79() {
-    if (jj_scan_token(CHAR)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_78() {
-    if (jj_scan_token(VOID)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_101() {
-    if (jj_scan_token(59)) return true;
-    if (jj_3R_100()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_230() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_237()) {
-    jj_scanpos = xsp;
-    if (jj_3R_238()) return true;
-    }
-    if (jj_3R_221()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_184() {
-    if (jj_scan_token(59)) return true;
-    if (jj_3R_105()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_77() {
-    if (jj_scan_token(CONST)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_127() {
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_116()) return true;
-    if (jj_scan_token(56)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_41() {
-    if (jj_3R_100()) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_101()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_221() {
-    if (jj_3R_229()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_230()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_116() {
-    if (jj_3R_105()) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_184()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_32() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_77()) jj_scanpos = xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_78()) {
-    jj_scanpos = xsp;
-    if (jj_3R_79()) {
-    jj_scanpos = xsp;
-    if (jj_3R_80()) {
-    jj_scanpos = xsp;
-    if (jj_3R_81()) {
-    jj_scanpos = xsp;
-    if (jj_3R_82()) {
-    jj_scanpos = xsp;
-    if (jj_3R_83()) {
-    jj_scanpos = xsp;
-    if (jj_3R_84()) {
-    jj_scanpos = xsp;
-    if (jj_3R_85()) {
-    jj_scanpos = xsp;
-    if (jj_3R_86()) {
-    jj_scanpos = xsp;
-    if (jj_3R_87()) {
-    jj_scanpos = xsp;
-    if (jj_3R_88()) return true;
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    }
-    xsp = jj_scanpos;
-    if (jj_3R_89()) jj_scanpos = xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_90()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_126() {
-    if (jj_3R_170()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_125() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_93() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_125()) {
-    jj_scanpos = xsp;
-    if (jj_3R_126()) {
-    jj_scanpos = xsp;
-    if (jj_3R_127()) return true;
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_59() {
-    if (jj_3R_110()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_58() {
-    if (jj_3R_109()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_57() {
-    if (jj_3R_108()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_46() {
-    if (jj_3R_103()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_228() {
-    if (jj_3R_116()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_56() {
-    if (jj_3R_98()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_234() {
-    if (jj_scan_token(88)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_22() {
-    Token xsp;
-    if (jj_3R_46()) return true;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_46()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_55() {
-    if (jj_3R_107()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_233() {
-    if (jj_scan_token(87)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_153() {
-    if (jj_scan_token(RETURN)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_228()) jj_scanpos = xsp;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3_10() {
-    if (jj_3R_26()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_232() {
-    if (jj_scan_token(86)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_133() {
-    if (jj_scan_token(96)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_231() {
-    if (jj_scan_token(85)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_152() {
-    if (jj_scan_token(BREAK)) return true;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_45() {
-    if (jj_scan_token(UNION)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_132() {
-    if (jj_scan_token(95)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_28() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3_10()) {
-    jj_scanpos = xsp;
-    if (jj_3R_55()) {
-    jj_scanpos = xsp;
-    if (jj_3R_56()) {
-    jj_scanpos = xsp;
-    if (jj_3R_57()) {
-    jj_scanpos = xsp;
-    if (jj_3R_58()) {
-    jj_scanpos = xsp;
-    if (jj_3R_59()) return true;
-    }
-    }
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_44() {
-    if (jj_scan_token(STRUCT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_222() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_231()) {
-    jj_scanpos = xsp;
-    if (jj_3R_232()) {
-    jj_scanpos = xsp;
-    if (jj_3R_233()) {
-    jj_scanpos = xsp;
-    if (jj_3R_234()) return true;
-    }
-    }
-    }
-    if (jj_3R_217()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_151() {
-    if (jj_scan_token(CONTINUE)) return true;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_131() {
-    if (jj_scan_token(100)) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3_18() {
-    if (jj_3R_35()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_20() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_44()) {
-    jj_scanpos = xsp;
-    if (jj_3R_45()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_217() {
-    if (jj_3R_221()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_222()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_130() {
-    if (jj_scan_token(99)) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_150() {
-    if (jj_scan_token(GOTO)) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_171() {
-    if (jj_3R_35()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_169() {
-    if (jj_3R_106()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_110() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_150()) {
-    jj_scanpos = xsp;
-    if (jj_3R_151()) {
-    jj_scanpos = xsp;
-    if (jj_3R_152()) {
-    jj_scanpos = xsp;
-    if (jj_3R_153()) return true;
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_124() {
-    if (jj_scan_token(65)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_169()) jj_scanpos = xsp;
-    if (jj_scan_token(66)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_129() {
-    if (jj_scan_token(55)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_171()) jj_scanpos = xsp;
-    if (jj_scan_token(56)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_39() {
-    if (jj_3R_20()) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_224() {
-    if (jj_scan_token(84)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_128() {
-    if (jj_scan_token(65)) return true;
-    if (jj_3R_116()) return true;
-    if (jj_scan_token(66)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_139() {
-    if (jj_scan_token(REGISTER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_223() {
-    if (jj_scan_token(83)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_21() {
-    if (jj_scan_token(IDENTIFIER)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_138() {
-    if (jj_scan_token(AUTO)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_94() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_128()) {
-    jj_scanpos = xsp;
-    if (jj_3R_129()) {
-    jj_scanpos = xsp;
-    if (jj_3R_130()) {
-    jj_scanpos = xsp;
-    if (jj_3R_131()) {
-    jj_scanpos = xsp;
-    if (jj_3R_132()) {
-    jj_scanpos = xsp;
-    if (jj_3R_133()) return true;
-    }
-    }
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_99() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_138()) {
-    jj_scanpos = xsp;
-    if (jj_3R_139()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_34() {
-    if (jj_3R_93()) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_94()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3_7() {
-    if (jj_3R_20()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_21()) jj_scanpos = xsp;
-    if (jj_scan_token(61)) return true;
-    if (jj_3R_22()) return true;
-    if (jj_scan_token(62)) return true;
-    return false;
-  }
-
-  private boolean jj_3_9() {
-    if (jj_scan_token(59)) return true;
-    if (jj_3R_25()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_218() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_223()) {
-    jj_scanpos = xsp;
-    if (jj_3R_224()) return true;
-    }
-    if (jj_3R_211()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_40() {
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3R_99()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_15() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3_7()) {
-    jj_scanpos = xsp;
-    if (jj_3R_39()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_209() {
-    if (jj_3R_25()) return true;
-    Token xsp;
-    while (true) {
-      xsp = jj_scanpos;
-      if (jj_3_9()) { jj_scanpos = xsp; break; }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_211() {
-    if (jj_3R_217()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_218()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_227() {
-    if (jj_3R_116()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_54() {
-    if (jj_scan_token(STATIC)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_226() {
-    if (jj_3R_116()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_210() {
-    if (jj_scan_token(59)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_27() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_54()) jj_scanpos = xsp;
-    if (jj_3R_16()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_225() {
-    if (jj_3R_116()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_212() {
-    if (jj_scan_token(82)) return true;
-    if (jj_3R_200()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_197() {
-    if (jj_3R_124()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_50() {
-    if (jj_scan_token(61)) return true;
-    if (jj_3R_209()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_210()) jj_scanpos = xsp;
-    if (jj_scan_token(62)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_196() {
-    if (jj_3R_123()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_200() {
-    if (jj_3R_211()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_212()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_49() {
-    if (jj_3R_105()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_195() {
-    if (jj_3R_122()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_159() {
-    if (jj_scan_token(98)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_149() {
-    if (jj_scan_token(FOR)) return true;
-    if (jj_scan_token(55)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_225()) jj_scanpos = xsp;
-    if (jj_scan_token(57)) return true;
-    xsp = jj_scanpos;
-    if (jj_3R_226()) jj_scanpos = xsp;
-    if (jj_scan_token(57)) return true;
-    xsp = jj_scanpos;
-    if (jj_3R_227()) jj_scanpos = xsp;
-    if (jj_scan_token(56)) return true;
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_194() {
-    if (jj_3R_15()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_220() {
-    if (jj_scan_token(LONG)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_158() {
-    if (jj_scan_token(97)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_16() {
-    if (jj_3R_40()) return true;
-    if (jj_3R_32()) return true;
-    if (jj_3R_41()) return true;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_25() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_49()) {
-    jj_scanpos = xsp;
-    if (jj_3R_50()) return true;
-    }
-    return false;
-  }
-
-  private boolean jj_3R_157() {
-    if (jj_scan_token(92)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_156() {
-    if (jj_scan_token(91)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_216() {
-    if (jj_scan_token(LONG)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_220()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_155() {
-    if (jj_scan_token(58)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_215() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_154() {
-    if (jj_scan_token(82)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_219() {
-    if (jj_scan_token(INT)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_201() {
-    if (jj_scan_token(81)) return true;
-    if (jj_3R_176()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_148() {
-    if (jj_scan_token(DO)) return true;
-    if (jj_3R_28()) return true;
-    if (jj_scan_token(WHILE)) return true;
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_116()) return true;
-    if (jj_scan_token(56)) return true;
-    if (jj_scan_token(57)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_173() {
-    if (jj_3R_124()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_176() {
-    if (jj_3R_200()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_201()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_214() {
-    if (jj_scan_token(SHORT)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_219()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_111() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_154()) {
-    jj_scanpos = xsp;
-    if (jj_3R_155()) {
-    jj_scanpos = xsp;
-    if (jj_3R_156()) {
-    jj_scanpos = xsp;
-    if (jj_3R_157()) {
-    jj_scanpos = xsp;
-    if (jj_3R_158()) {
-    jj_scanpos = xsp;
-    if (jj_3R_159()) return true;
-    }
-    }
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_19() {
-    if (jj_3R_32()) return true;
-    if (jj_scan_token(IDENTIFIER)) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_173()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_213() {
-    if (jj_scan_token(CHAR)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_147() {
-    if (jj_scan_token(WHILE)) return true;
-    if (jj_scan_token(55)) return true;
-    if (jj_3R_116()) return true;
-    if (jj_scan_token(56)) return true;
-    if (jj_3R_28()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_206() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_213()) {
-    jj_scanpos = xsp;
-    if (jj_3R_214()) {
-    jj_scanpos = xsp;
-    if (jj_3R_215()) {
-    jj_scanpos = xsp;
-    if (jj_3R_216()) return true;
-    }
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_205() {
-    if (jj_scan_token(UNSIGNED)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_109() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_147()) {
-    jj_scanpos = xsp;
-    if (jj_3R_148()) {
-    jj_scanpos = xsp;
-    if (jj_3R_149()) return true;
-    }
-    }
-    return false;
-  }
-
-  private boolean jj_3R_204() {
-    if (jj_scan_token(SIGNED)) return true;
-    return false;
-  }
-
-  private boolean jj_3R_177() {
-    if (jj_scan_token(80)) return true;
-    if (jj_3R_160()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_136() {
-    if (jj_scan_token(59)) return true;
-    if (jj_scan_token(60)) return true;
-    return false;
-  }
-
-  private boolean jj_3_16() {
-    if (jj_3R_29()) return true;
-    return false;
-  }
-
-  private boolean jj_3R_160() {
-    if (jj_3R_176()) return true;
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_177()) jj_scanpos = xsp;
-    return false;
-  }
-
-  private boolean jj_3R_193() {
-    Token xsp;
-    xsp = jj_scanpos;
-    if (jj_3R_204()) {
-    jj_scanpos = xsp;
-    if (jj_3R_205()) return true;
-    }
-    xsp = jj_scanpos;
-    if (jj_3R_206()) jj_scanpos = xsp;
-    return false;
-  }
-
-  /** Generated Token Manager. */
-  public CParserTokenManager token_source;
-  SimpleCharStream jj_input_stream;
-  /** Current token. */
-  public Token token;
-  /** Next token. */
-  public Token jj_nt;
-  private int jj_ntk;
-  private Token jj_scanpos, jj_lastpos;
-  private int jj_la;
-  private int jj_gen;
-  final private int[] jj_la1 = new int[94];
-  static private int[] jj_la1_0;
-  static private int[] jj_la1_1;
-  static private int[] jj_la1_2;
-  static private int[] jj_la1_3;
-  static {
-      jj_la1_init_0();
-      jj_la1_init_1();
-      jj_la1_init_2();
-      jj_la1_init_3();
-   }
-   private static void jj_la1_init_0() {
-      jj_la1_0 = new int[] {0xc5c00000,0x40000000,0x84800000,0x0,0x40000000,0x84800000,0x84800000,0x0,0x0,0x0,0x400000,0x400000,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0x0,0x84800000,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0x0,0x84800000,0x0,0x0,0x0,0x80000000,0x80000000,0x84800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80d1000,0x80d1000,0x381d1000,0x2000000,0x80d1000,0xbedd1000,0x3a1d1000,0x10000000,0x80d1000,0x80d1000,0x80d1000,0x0,0x80d1000,0x20100000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80d1000,0x0,0x8000000,0x0,0x0,0x0,0xd1000,0x0,0x8c8d1000,0xd1000,};
-   }
-   private static void jj_la1_init_1() {
-      jj_la1_1 = new int[] {0x127cf3,0x1,0x126cf2,0x22000000,0x1,0x126cf2,0x126cf2,0x8000000,0x0,0x1,0x1000,0x1000,0x20,0x20000,0x400,0x2,0x20000,0x400,0x24480,0x24480,0x126cd2,0x4000000,0x0,0x20,0x20000,0x400,0x2,0x20000,0x400,0x24480,0x24480,0x26cd2,0x4000000,0x0,0x100000,0x10,0x10,0x126cf2,0x8000000,0x0,0x80000000,0x0,0x0,0x100000,0x100000,0x100000,0x8000000,0x80000000,0x20,0x4000000,0x8000000,0x8000000,0x24900000,0x4900000,0x269d800c,0x100200,0x4900000,0x269ffeff,0x269d820c,0x40000,0x4900000,0x4900000,0x4900000,0x90004,0x4900000,0x8008,0x8000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x4000000,0x4900000,0x800000,0x4000000,0x4000000,0x800000,0x800000,0x900000,0x8000000,0x4926cf2,0x0,};
-   }
-   private static void jj_la1_init_2() {
-      jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x3,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x98040000,0x98040000,0x98040000,0x0,0x98040000,0x98040000,0x98040000,0x0,0x98040000,0x98040000,0x98040000,0x0,0x98040000,0x0,0x0,0x1ff8,0x2000,0x4000,0x8000,0x10000,0x20000,0x40000,0x180000,0x180000,0x1e00000,0x1e00000,0x6000000,0x6000000,0x18000000,0x18000000,0x60000000,0x60000000,0x98040000,0x0,0x98040000,0x18040000,0x80000002,0x80000002,0x0,0x0,0x98040000,0x0,};
-   }
-   private static void jj_la1_init_3() {
-      jj_la1_3 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x7,0x7,0x0,0x7,0x7,0x7,0x0,0x7,0x7,0x7,0x0,0x7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x0,0x7,0x6,0x19,0x19,0x0,0x0,0x7,0x0,};
-   }
-  final private JJCalls[] jj_2_rtns = new JJCalls[18];
-  private boolean jj_rescan = false;
-  private int jj_gc = 0;
-
-  /** Constructor with InputStream. */
-  public GNUnetParser(java.io.InputStream stream) {
-     this(stream, null);
-  }
-  /** Constructor with InputStream and supplied encoding */
-  public GNUnetParser(java.io.InputStream stream, String encoding) {
-    try { jj_input_stream = new SimpleCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
-    token_source = new CParserTokenManager(jj_input_stream);
-    token = new Token();
-    jj_ntk = -1;
-    jj_gen = 0;
-    for (int i = 0; i < 94; i++) jj_la1[i] = -1;
-    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream stream) {
-     ReInit(stream, null);
-  }
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream stream, String encoding) {
-    try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
-    token_source.ReInit(jj_input_stream);
-    token = new Token();
-    jj_ntk = -1;
-    jj_gen = 0;
-    for (int i = 0; i < 94; i++) jj_la1[i] = -1;
-    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
-  }
-
-  /** Constructor. */
-  public GNUnetParser(java.io.Reader stream) {
-    jj_input_stream = new SimpleCharStream(stream, 1, 1);
-    token_source = new CParserTokenManager(jj_input_stream);
-    token = new Token();
-    jj_ntk = -1;
-    jj_gen = 0;
-    for (int i = 0; i < 94; i++) jj_la1[i] = -1;
-    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.Reader stream) {
-    jj_input_stream.ReInit(stream, 1, 1);
-    token_source.ReInit(jj_input_stream);
-    token = new Token();
-    jj_ntk = -1;
-    jj_gen = 0;
-    for (int i = 0; i < 94; i++) jj_la1[i] = -1;
-    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
-  }
-
-  /** Constructor with generated Token Manager. */
-  public GNUnetParser(CParserTokenManager tm) {
-    token_source = tm;
-    token = new Token();
-    jj_ntk = -1;
-    jj_gen = 0;
-    for (int i = 0; i < 94; i++) jj_la1[i] = -1;
-    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
-  }
-
-  /** Reinitialise. */
-  public void ReInit(CParserTokenManager tm) {
-    token_source = tm;
-    token = new Token();
-    jj_ntk = -1;
-    jj_gen = 0;
-    for (int i = 0; i < 94; i++) jj_la1[i] = -1;
-    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
-  }
-
-  private Token jj_consume_token(int kind) throws ParseException {
-    Token oldToken;
-    if ((oldToken = token).next != null) token = token.next;
-    else token = token.next = token_source.getNextToken();
-    jj_ntk = -1;
-    if (token.kind == kind) {
-      jj_gen++;
-      if (++jj_gc > 100) {
-        jj_gc = 0;
-        for (int i = 0; i < jj_2_rtns.length; i++) {
-          JJCalls c = jj_2_rtns[i];
-          while (c != null) {
-            if (c.gen < jj_gen) c.first = null;
-            c = c.next;
-          }
-        }
-      }
-      return token;
-    }
-    token = oldToken;
-    jj_kind = kind;
-    throw generateParseException();
-  }
-
-  static private final class LookaheadSuccess extends java.lang.Error { }
-  final private LookaheadSuccess jj_ls = new LookaheadSuccess();
-  private boolean jj_scan_token(int kind) {
-    if (jj_scanpos == jj_lastpos) {
-      jj_la--;
-      if (jj_scanpos.next == null) {
-        jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
-      } else {
-        jj_lastpos = jj_scanpos = jj_scanpos.next;
-      }
-    } else {
-      jj_scanpos = jj_scanpos.next;
-    }
-    if (jj_rescan) {
-      int i = 0; Token tok = token;
-      while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
-      if (tok != null) jj_add_error_token(kind, i);
-    }
-    if (jj_scanpos.kind != kind) return true;
-    if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls;
-    return false;
-  }
-
-
-/** Get the next Token. */
-  final public Token getNextToken() {
-    if (token.next != null) token = token.next;
-    else token = token.next = token_source.getNextToken();
-    jj_ntk = -1;
-    jj_gen++;
-    return token;
-  }
-
-/** Get the specific Token. */
-  final public Token getToken(int index) {
-    Token t = token;
-    for (int i = 0; i < index; i++) {
-      if (t.next != null) t = t.next;
-      else t = t.next = token_source.getNextToken();
-    }
-    return t;
-  }
-
-  private int jj_ntk() {
-    if ((jj_nt=token.next) == null)
-      return (jj_ntk = (token.next=token_source.getNextToken()).kind);
-    else
-      return (jj_ntk = jj_nt.kind);
-  }
-
-  private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>();
-  private int[] jj_expentry;
-  private int jj_kind = -1;
-  private int[] jj_lasttokens = new int[100];
-  private int jj_endpos;
-
-  private void jj_add_error_token(int kind, int pos) {
-    if (pos >= 100) return;
-    if (pos == jj_endpos + 1) {
-      jj_lasttokens[jj_endpos++] = kind;
-    } else if (jj_endpos != 0) {
-      jj_expentry = new int[jj_endpos];
-      for (int i = 0; i < jj_endpos; i++) {
-        jj_expentry[i] = jj_lasttokens[i];
-      }
-      jj_entries_loop: for (java.util.Iterator<?> it = jj_expentries.iterator(); it.hasNext();) {
-        int[] oldentry = (int[])(it.next());
-        if (oldentry.length == jj_expentry.length) {
-          for (int i = 0; i < jj_expentry.length; i++) {
-            if (oldentry[i] != jj_expentry[i]) {
-              continue jj_entries_loop;
-            }
-          }
-          jj_expentries.add(jj_expentry);
-          break jj_entries_loop;
-        }
-      }
-      if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
-    }
-  }
-
-  /** Generate ParseException. */
-  public ParseException generateParseException() {
-    jj_expentries.clear();
-    boolean[] la1tokens = new boolean[101];
-    if (jj_kind >= 0) {
-      la1tokens[jj_kind] = true;
-      jj_kind = -1;
-    }
-    for (int i = 0; i < 94; i++) {
-      if (jj_la1[i] == jj_gen) {
-        for (int j = 0; j < 32; j++) {
-          if ((jj_la1_0[i] & (1<<j)) != 0) {
-            la1tokens[j] = true;
-          }
-          if ((jj_la1_1[i] & (1<<j)) != 0) {
-            la1tokens[32+j] = true;
-          }
-          if ((jj_la1_2[i] & (1<<j)) != 0) {
-            la1tokens[64+j] = true;
-          }
-          if ((jj_la1_3[i] & (1<<j)) != 0) {
-            la1tokens[96+j] = true;
-          }
-        }
-      }
-    }
-    for (int i = 0; i < 101; i++) {
-      if (la1tokens[i]) {
-        jj_expentry = new int[1];
-        jj_expentry[0] = i;
-        jj_expentries.add(jj_expentry);
-      }
-    }
-    jj_endpos = 0;
-    jj_rescan_token();
-    jj_add_error_token(0, 0);
-    int[][] exptokseq = new int[jj_expentries.size()][];
-    for (int i = 0; i < jj_expentries.size(); i++) {
-      exptokseq[i] = jj_expentries.get(i);
-    }
-    return new ParseException(token, exptokseq, tokenImage);
-  }
-
-  /** Enable tracing. */
-  final public void enable_tracing() {
-  }
-
-  /** Disable tracing. */
-  final public void disable_tracing() {
-  }
-
-  private void jj_rescan_token() {
-    jj_rescan = true;
-    for (int i = 0; i < 18; i++) {
-    try {
-      JJCalls p = jj_2_rtns[i];
-      do {
-        if (p.gen > jj_gen) {
-          jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
-          switch (i) {
-            case 0: jj_3_1(); break;
-            case 1: jj_3_2(); break;
-            case 2: jj_3_3(); break;
-            case 3: jj_3_4(); break;
-            case 4: jj_3_5(); break;
-            case 5: jj_3_6(); break;
-            case 6: jj_3_7(); break;
-            case 7: jj_3_8(); break;
-            case 8: jj_3_9(); break;
-            case 9: jj_3_10(); break;
-            case 10: jj_3_11(); break;
-            case 11: jj_3_12(); break;
-            case 12: jj_3_13(); break;
-            case 13: jj_3_14(); break;
-            case 14: jj_3_15(); break;
-            case 15: jj_3_16(); break;
-            case 16: jj_3_17(); break;
-            case 17: jj_3_18(); break;
-          }
-        }
-        p = p.next;
-      } while (p != null);
-      } catch(LookaheadSuccess ls) { }
-    }
-    jj_rescan = false;
-  }
-
-  private void jj_save(int index, int xla) {
-    JJCalls p = jj_2_rtns[index];
-    while (p.gen > jj_gen) {
-      if (p.next == null) { p = p.next = new JJCalls(); break; }
-      p = p.next;
-    }
-    p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
-  }
-
-  static final class JJCalls {
-    int gen;
-    Token first;
-    int arg;
-    JJCalls next;
-  }
-
-}
-
-class JTBToolkit {
-   static NodeToken makeNodeToken(Token t) {
-      return new NodeToken(t.image.intern(), t.kind, t.beginLine, t.beginColumn, t.endLine, t.endColumn);
-   }
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/ParseException.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/ParseException.java
deleted file mode 100644 (file)
index 44162fe..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-package org.gnunet.seaspider.parser;
-/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 5.0 */
-/* JavaCCOptions:KEEP_LINE_COL=null */
-/**
- * This exception is thrown when parse errors are encountered.
- * You can explicitly create objects of this exception type by
- * calling the method generateParseException in the generated
- * parser.
- *
- * You can modify this class to customize your error reporting
- * mechanisms so long as you retain the public fields.
- */
-public class ParseException extends Exception {
-
-  /**
-   * The version identifier for this Serializable class.
-   * Increment only if the <i>serialized</i> form of the
-   * class changes.
-   */
-  private static final long serialVersionUID = 1L;
-
-  /**
-   * This constructor is used by the method "generateParseException"
-   * in the generated parser.  Calling this constructor generates
-   * a new object of this type with the fields "currentToken",
-   * "expectedTokenSequences", and "tokenImage" set.
-   */
-  public ParseException(Token currentTokenVal,
-                        int[][] expectedTokenSequencesVal,
-                        String[] tokenImageVal
-                       )
-  {
-    super(initialise(currentTokenVal, expectedTokenSequencesVal, tokenImageVal));
-    currentToken = currentTokenVal;
-    expectedTokenSequences = expectedTokenSequencesVal;
-    tokenImage = tokenImageVal;
-  }
-
-  /**
-   * The following constructors are for use by you for whatever
-   * purpose you can think of.  Constructing the exception in this
-   * manner makes the exception behave in the normal way - i.e., as
-   * documented in the class "Throwable".  The fields "errorToken",
-   * "expectedTokenSequences", and "tokenImage" do not contain
-   * relevant information.  The JavaCC generated code does not use
-   * these constructors.
-   */
-
-  public ParseException() {
-    super();
-  }
-
-  /** Constructor with message. */
-  public ParseException(String message) {
-    super(message);
-  }
-
-
-  /**
-   * This is the last token that has been consumed successfully.  If
-   * this object has been created due to a parse error, the token
-   * followng this token will (therefore) be the first error token.
-   */
-  public Token currentToken;
-
-  /**
-   * Each entry in this array is an array of integers.  Each array
-   * of integers represents a sequence of tokens (by their ordinal
-   * values) that is expected at this point of the parse.
-   */
-  public int[][] expectedTokenSequences;
-
-  /**
-   * This is a reference to the "tokenImage" array of the generated
-   * parser within which the parse error occurred.  This array is
-   * defined in the generated ...Constants interface.
-   */
-  public String[] tokenImage;
-
-  /**
-   * It uses "currentToken" and "expectedTokenSequences" to generate a parse
-   * error message and returns it.  If this object has been created
-   * due to a parse error, and you do not catch it (it gets thrown
-   * from the parser) the correct error message
-   * gets displayed.
-   */
-  private static String initialise(Token currentToken,
-                           int[][] expectedTokenSequences,
-                           String[] tokenImage) {
-    String eol = System.getProperty("line.separator", "\n");
-    StringBuffer expected = new StringBuffer();
-    int maxSize = 0;
-    for (int i = 0; i < expectedTokenSequences.length; i++) {
-      if (maxSize < expectedTokenSequences[i].length) {
-        maxSize = expectedTokenSequences[i].length;
-      }
-      for (int j = 0; j < expectedTokenSequences[i].length; j++) {
-        expected.append(tokenImage[expectedTokenSequences[i][j]]).append(' ');
-      }
-      if (expectedTokenSequences[i][expectedTokenSequences[i].length - 1] != 0) {
-        expected.append("...");
-      }
-      expected.append(eol).append("    ");
-    }
-    String retval = "Encountered \"";
-    Token tok = currentToken.next;
-    for (int i = 0; i < maxSize; i++) {
-      if (i != 0) retval += " ";
-      if (tok.kind == 0) {
-        retval += tokenImage[0];
-        break;
-      }
-      retval += " " + tokenImage[tok.kind];
-      retval += " \"";
-      retval += add_escapes(tok.image);
-      retval += " \"";
-      tok = tok.next;
-    }
-    retval += "\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn;
-    retval += "." + eol;
-    if (expectedTokenSequences.length == 1) {
-      retval += "Was expecting:" + eol + "    ";
-    } else {
-      retval += "Was expecting one of:" + eol + "    ";
-    }
-    retval += expected.toString();
-    return retval;
-  }
-
-  /**
-   * The end of line string for this machine.
-   */
-  protected String eol = System.getProperty("line.separator", "\n");
-
-  /**
-   * Used to convert raw characters to their escaped version
-   * when these raw version cannot be used as part of an ASCII
-   * string literal.
-   */
-  static String add_escapes(String str) {
-      StringBuffer retval = new StringBuffer();
-      char ch;
-      for (int i = 0; i < str.length(); i++) {
-        switch (str.charAt(i))
-        {
-           case 0 :
-              continue;
-           case '\b':
-              retval.append("\\b");
-              continue;
-           case '\t':
-              retval.append("\\t");
-              continue;
-           case '\n':
-              retval.append("\\n");
-              continue;
-           case '\f':
-              retval.append("\\f");
-              continue;
-           case '\r':
-              retval.append("\\r");
-              continue;
-           case '\"':
-              retval.append("\\\"");
-              continue;
-           case '\'':
-              retval.append("\\\'");
-              continue;
-           case '\\':
-              retval.append("\\\\");
-              continue;
-           default:
-              if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {
-                 String s = "0000" + Integer.toString(ch, 16);
-                 retval.append("\\u" + s.substring(s.length() - 4, s.length()));
-              } else {
-                 retval.append(ch);
-              }
-              continue;
-        }
-      }
-      return retval.toString();
-   }
-
-}
-/* JavaCC - OriginalChecksum=c5a983a229aa877dc2b3b3b9933cdd6b (do not edit this line) */
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/SimpleCharStream.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/SimpleCharStream.java
deleted file mode 100644 (file)
index 8f115d5..0000000
+++ /dev/null
@@ -1,470 +0,0 @@
-package org.gnunet.seaspider.parser;
-/* Generated By:JavaCC: Do not edit this line. SimpleCharStream.java Version 5.0 */
-/* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */
-/**
- * An implementation of interface CharStream, where the stream is assumed to
- * contain only ASCII characters (without unicode processing).
- */
-
-public class SimpleCharStream
-{
-/** Whether parser is static. */
-  public static final boolean staticFlag = false;
-  int bufsize;
-  int available;
-  int tokenBegin;
-/** Position in buffer. */
-  public int bufpos = -1;
-  protected int bufline[];
-  protected int bufcolumn[];
-
-  protected int column = 0;
-  protected int line = 1;
-
-  protected boolean prevCharIsCR = false;
-  protected boolean prevCharIsLF = false;
-
-  protected java.io.Reader inputStream;
-
-  protected char[] buffer;
-  protected int maxNextCharInd = 0;
-  protected int inBuf = 0;
-  protected int tabSize = 8;
-
-  protected void setTabSize(int i) { tabSize = i; }
-  protected int getTabSize(int i) { return tabSize; }
-
-
-  protected void ExpandBuff(boolean wrapAround)
-  {
-    char[] newbuffer = new char[bufsize + 2048];
-    int newbufline[] = new int[bufsize + 2048];
-    int newbufcolumn[] = new int[bufsize + 2048];
-
-    try
-    {
-      if (wrapAround)
-      {
-        System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
-        System.arraycopy(buffer, 0, newbuffer, bufsize - tokenBegin, bufpos);
-        buffer = newbuffer;
-
-        System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
-        System.arraycopy(bufline, 0, newbufline, bufsize - tokenBegin, bufpos);
-        bufline = newbufline;
-
-        System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
-        System.arraycopy(bufcolumn, 0, newbufcolumn, bufsize - tokenBegin, bufpos);
-        bufcolumn = newbufcolumn;
-
-        maxNextCharInd = (bufpos += (bufsize - tokenBegin));
-      }
-      else
-      {
-        System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
-        buffer = newbuffer;
-
-        System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
-        bufline = newbufline;
-
-        System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
-        bufcolumn = newbufcolumn;
-
-        maxNextCharInd = (bufpos -= tokenBegin);
-      }
-    }
-    catch (Throwable t)
-    {
-      throw new Error(t.getMessage());
-    }
-
-
-    bufsize += 2048;
-    available = bufsize;
-    tokenBegin = 0;
-  }
-
-  protected void FillBuff() throws java.io.IOException
-  {
-    if (maxNextCharInd == available)
-    {
-      if (available == bufsize)
-      {
-        if (tokenBegin > 2048)
-        {
-          bufpos = maxNextCharInd = 0;
-          available = tokenBegin;
-        }
-        else if (tokenBegin < 0)
-          bufpos = maxNextCharInd = 0;
-        else
-          ExpandBuff(false);
-      }
-      else if (available > tokenBegin)
-        available = bufsize;
-      else if ((tokenBegin - available) < 2048)
-        ExpandBuff(true);
-      else
-        available = tokenBegin;
-    }
-
-    int i;
-    try {
-      if ((i = inputStream.read(buffer, maxNextCharInd, available - maxNextCharInd)) == -1)
-      {
-        inputStream.close();
-        throw new java.io.IOException();
-      }
-      else
-        maxNextCharInd += i;
-      return;
-    }
-    catch(java.io.IOException e) {
-      --bufpos;
-      backup(0);
-      if (tokenBegin == -1)
-        tokenBegin = bufpos;
-      throw e;
-    }
-  }
-
-/** Start. */
-  public char BeginToken() throws java.io.IOException
-  {
-    tokenBegin = -1;
-    char c = readChar();
-    tokenBegin = bufpos;
-
-    return c;
-  }
-
-  protected void UpdateLineColumn(char c)
-  {
-    column++;
-
-    if (prevCharIsLF)
-    {
-      prevCharIsLF = false;
-      line += (column = 1);
-    }
-    else if (prevCharIsCR)
-    {
-      prevCharIsCR = false;
-      if (c == '\n')
-      {
-        prevCharIsLF = true;
-      }
-      else
-        line += (column = 1);
-    }
-
-    switch (c)
-    {
-      case '\r' :
-        prevCharIsCR = true;
-        break;
-      case '\n' :
-        prevCharIsLF = true;
-        break;
-      case '\t' :
-        column--;
-        column += (tabSize - (column % tabSize));
-        break;
-      default :
-        break;
-    }
-
-    bufline[bufpos] = line;
-    bufcolumn[bufpos] = column;
-  }
-
-/** Read a character. */
-  public char readChar() throws java.io.IOException
-  {
-    if (inBuf > 0)
-    {
-      --inBuf;
-
-      if (++bufpos == bufsize)
-        bufpos = 0;
-
-      return buffer[bufpos];
-    }
-
-    if (++bufpos >= maxNextCharInd)
-      FillBuff();
-
-    char c = buffer[bufpos];
-
-    UpdateLineColumn(c);
-    return c;
-  }
-
-  @Deprecated
-  /**
-   * @deprecated
-   * @see #getEndColumn
-   */
-
-  public int getColumn() {
-    return bufcolumn[bufpos];
-  }
-
-  @Deprecated
-  /**
-   * @deprecated
-   * @see #getEndLine
-   */
-
-  public int getLine() {
-    return bufline[bufpos];
-  }
-
-  /** Get token end column number. */
-  public int getEndColumn() {
-    return bufcolumn[bufpos];
-  }
-
-  /** Get token end line number. */
-  public int getEndLine() {
-     return bufline[bufpos];
-  }
-
-  /** Get token beginning column number. */
-  public int getBeginColumn() {
-    return bufcolumn[tokenBegin];
-  }
-
-  /** Get token beginning line number. */
-  public int getBeginLine() {
-    return bufline[tokenBegin];
-  }
-
-/** Backup a number of characters. */
-  public void backup(int amount) {
-
-    inBuf += amount;
-    if ((bufpos -= amount) < 0)
-      bufpos += bufsize;
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.Reader dstream, int startline,
-  int startcolumn, int buffersize)
-  {
-    inputStream = dstream;
-    line = startline;
-    column = startcolumn - 1;
-
-    available = bufsize = buffersize;
-    buffer = new char[buffersize];
-    bufline = new int[buffersize];
-    bufcolumn = new int[buffersize];
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.Reader dstream, int startline,
-                          int startcolumn)
-  {
-    this(dstream, startline, startcolumn, 4096);
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.Reader dstream)
-  {
-    this(dstream, 1, 1, 4096);
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.Reader dstream, int startline,
-  int startcolumn, int buffersize)
-  {
-    inputStream = dstream;
-    line = startline;
-    column = startcolumn - 1;
-
-    if (buffer == null || buffersize != buffer.length)
-    {
-      available = bufsize = buffersize;
-      buffer = new char[buffersize];
-      bufline = new int[buffersize];
-      bufcolumn = new int[buffersize];
-    }
-    prevCharIsLF = prevCharIsCR = false;
-    tokenBegin = inBuf = maxNextCharInd = 0;
-    bufpos = -1;
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.Reader dstream, int startline,
-                     int startcolumn)
-  {
-    ReInit(dstream, startline, startcolumn, 4096);
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.Reader dstream)
-  {
-    ReInit(dstream, 1, 1, 4096);
-  }
-  /** Constructor. */
-  public SimpleCharStream(java.io.InputStream dstream, String encoding, int startline,
-  int startcolumn, int buffersize) throws java.io.UnsupportedEncodingException
-  {
-    this(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize);
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.InputStream dstream, int startline,
-  int startcolumn, int buffersize)
-  {
-    this(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize);
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.InputStream dstream, String encoding, int startline,
-                          int startcolumn) throws java.io.UnsupportedEncodingException
-  {
-    this(dstream, encoding, startline, startcolumn, 4096);
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.InputStream dstream, int startline,
-                          int startcolumn)
-  {
-    this(dstream, startline, startcolumn, 4096);
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException
-  {
-    this(dstream, encoding, 1, 1, 4096);
-  }
-
-  /** Constructor. */
-  public SimpleCharStream(java.io.InputStream dstream)
-  {
-    this(dstream, 1, 1, 4096);
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream dstream, String encoding, int startline,
-                          int startcolumn, int buffersize) throws java.io.UnsupportedEncodingException
-  {
-    ReInit(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize);
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream dstream, int startline,
-                          int startcolumn, int buffersize)
-  {
-    ReInit(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize);
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException
-  {
-    ReInit(dstream, encoding, 1, 1, 4096);
-  }
-
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream dstream)
-  {
-    ReInit(dstream, 1, 1, 4096);
-  }
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream dstream, String encoding, int startline,
-                     int startcolumn) throws java.io.UnsupportedEncodingException
-  {
-    ReInit(dstream, encoding, startline, startcolumn, 4096);
-  }
-  /** Reinitialise. */
-  public void ReInit(java.io.InputStream dstream, int startline,
-                     int startcolumn)
-  {
-    ReInit(dstream, startline, startcolumn, 4096);
-  }
-  /** Get token literal value. */
-  public String GetImage()
-  {
-    if (bufpos >= tokenBegin)
-      return new String(buffer, tokenBegin, bufpos - tokenBegin + 1);
-    else
-      return new String(buffer, tokenBegin, bufsize - tokenBegin) +
-                            new String(buffer, 0, bufpos + 1);
-  }
-
-  /** Get the suffix. */
-  public char[] GetSuffix(int len)
-  {
-    char[] ret = new char[len];
-
-    if ((bufpos + 1) >= len)
-      System.arraycopy(buffer, bufpos - len + 1, ret, 0, len);
-    else
-    {
-      System.arraycopy(buffer, bufsize - (len - bufpos - 1), ret, 0,
-                                                        len - bufpos - 1);
-      System.arraycopy(buffer, 0, ret, len - bufpos - 1, bufpos + 1);
-    }
-
-    return ret;
-  }
-
-  /** Reset buffer when finished. */
-  public void Done()
-  {
-    buffer = null;
-    bufline = null;
-    bufcolumn = null;
-  }
-
-  /**
-   * Method to adjust line and column numbers for the start of a token.
-   */
-  public void adjustBeginLineColumn(int newLine, int newCol)
-  {
-    int start = tokenBegin;
-    int len;
-
-    if (bufpos >= tokenBegin)
-    {
-      len = bufpos - tokenBegin + inBuf + 1;
-    }
-    else
-    {
-      len = bufsize - tokenBegin + bufpos + 1 + inBuf;
-    }
-
-    int i = 0, j = 0, k = 0;
-    int nextColDiff = 0, columnDiff = 0;
-
-    while (i < len && bufline[j = start % bufsize] == bufline[k = ++start % bufsize])
-    {
-      bufline[j] = newLine;
-      nextColDiff = columnDiff + bufcolumn[k] - bufcolumn[j];
-      bufcolumn[j] = newCol + columnDiff;
-      columnDiff = nextColDiff;
-      i++;
-    }
-
-    if (i < len)
-    {
-      bufline[j] = newLine++;
-      bufcolumn[j] = newCol + columnDiff;
-
-      while (i++ < len)
-      {
-        if (bufline[j = start % bufsize] != bufline[++start % bufsize])
-          bufline[j] = newLine++;
-        else
-          bufline[j] = newLine;
-      }
-    }
-
-    line = bufline[j];
-    column = bufcolumn[j];
-  }
-
-}
-/* JavaCC - OriginalChecksum=b0bce35239226f00f9dd0fa14ab3ad17 (do not edit this line) */
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/Token.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/Token.java
deleted file mode 100644 (file)
index 468572c..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-package org.gnunet.seaspider.parser;
-/* Generated By:JavaCC: Do not edit this line. Token.java Version 5.0 */
-/* JavaCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COL=null,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */
-/**
- * Describes the input token stream.
- */
-
-public class Token implements java.io.Serializable {
-
-  /**
-   * The version identifier for this Serializable class.
-   * Increment only if the <i>serialized</i> form of the
-   * class changes.
-   */
-  private static final long serialVersionUID = 1L;
-
-  /**
-   * An integer that describes the kind of this token.  This numbering
-   * system is determined by JavaCCParser, and a table of these numbers is
-   * stored in the file ...Constants.java.
-   */
-  public int kind;
-
-  /** The line number of the first character of this Token. */
-  public int beginLine;
-  /** The column number of the first character of this Token. */
-  public int beginColumn;
-  /** The line number of the last character of this Token. */
-  public int endLine;
-  /** The column number of the last character of this Token. */
-  public int endColumn;
-
-  /**
-   * The string image of the token.
-   */
-  public String image;
-
-  /**
-   * A reference to the next regular (non-special) token from the input
-   * stream.  If this is the last token from the input stream, or if the
-   * token manager has not read tokens beyond this one, this field is
-   * set to null.  This is true only if this token is also a regular
-   * token.  Otherwise, see below for a description of the contents of
-   * this field.
-   */
-  public Token next;
-
-  /**
-   * This field is used to access special tokens that occur prior to this
-   * token, but after the immediately preceding regular (non-special) token.
-   * If there are no such special tokens, this field is set to null.
-   * When there are more than one such special token, this field refers
-   * to the last of these special tokens, which in turn refers to the next
-   * previous special token through its specialToken field, and so on
-   * until the first special token (whose specialToken field is null).
-   * The next fields of special tokens refer to other special tokens that
-   * immediately follow it (without an intervening regular token).  If there
-   * is no such token, this field is null.
-   */
-  public Token specialToken;
-
-  /**
-   * An optional attribute value of the Token.
-   * Tokens which are not used as syntactic sugar will often contain
-   * meaningful values that will be used later on by the compiler or
-   * interpreter. This attribute value is often different from the image.
-   * Any subclass of Token that actually wants to return a non-null value can
-   * override this method as appropriate.
-   */
-  public Object getValue() {
-    return null;
-  }
-
-  /**
-   * No-argument constructor
-   */
-  public Token() {}
-
-  /**
-   * Constructs a new token for the specified Image.
-   */
-  public Token(int kind)
-  {
-    this(kind, null);
-  }
-
-  /**
-   * Constructs a new token for the specified Image and Kind.
-   */
-  public Token(int kind, String image)
-  {
-    this.kind = kind;
-    this.image = image;
-  }
-
-  /**
-   * Returns the image.
-   */
-  public String toString()
-  {
-    return image;
-  }
-
-  /**
-   * Returns a new Token object, by default. However, if you want, you
-   * can create and return subclass objects based on the value of ofKind.
-   * Simply add the cases to the switch for all those special cases.
-   * For example, if you have a subclass of Token called IDToken that
-   * you want to create if ofKind is ID, simply add something like :
-   *
-   *    case MyParserConstants.ID : return new IDToken(ofKind, image);
-   *
-   * to the following switch statement. Then you can cast matchedToken
-   * variable to the appropriate type and use sit in your lexical actions.
-   */
-  public static Token newToken(int ofKind, String image)
-  {
-    switch(ofKind)
-    {
-      default : return new Token(ofKind, image);
-    }
-  }
-
-  public static Token newToken(int ofKind)
-  {
-    return newToken(ofKind, null);
-  }
-
-}
-/* JavaCC - OriginalChecksum=6145f5d5b504ccb4f95e09f2ce3e748a (do not edit this line) */
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/TokenMgrError.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/TokenMgrError.java
deleted file mode 100644 (file)
index 3e46dcf..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-package org.gnunet.seaspider.parser;
-/* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 5.0 */
-/* JavaCCOptions: */
-/** Token Manager Error. */
-public class TokenMgrError extends Error
-{
-
-  /**
-   * The version identifier for this Serializable class.
-   * Increment only if the <i>serialized</i> form of the
-   * class changes.
-   */
-  private static final long serialVersionUID = 1L;
-
-  /*
-   * Ordinals for various reasons why an Error of this type can be thrown.
-   */
-
-  /**
-   * Lexical error occurred.
-   */
-  static final int LEXICAL_ERROR = 0;
-
-  /**
-   * An attempt was made to create a second instance of a static token manager.
-   */
-  static final int STATIC_LEXER_ERROR = 1;
-
-  /**
-   * Tried to change to an invalid lexical state.
-   */
-  static final int INVALID_LEXICAL_STATE = 2;
-
-  /**
-   * Detected (and bailed out of) an infinite loop in the token manager.
-   */
-  static final int LOOP_DETECTED = 3;
-
-  /**
-   * Indicates the reason why the exception is thrown. It will have
-   * one of the above 4 values.
-   */
-  int errorCode;
-
-  /**
-   * Replaces unprintable characters by their escaped (or unicode escaped)
-   * equivalents in the given string
-   */
-  protected static final String addEscapes(String str) {
-    StringBuffer retval = new StringBuffer();
-    char ch;
-    for (int i = 0; i < str.length(); i++) {
-      switch (str.charAt(i))
-      {
-        case 0 :
-          continue;
-        case '\b':
-          retval.append("\\b");
-          continue;
-        case '\t':
-          retval.append("\\t");
-          continue;
-        case '\n':
-          retval.append("\\n");
-          continue;
-        case '\f':
-          retval.append("\\f");
-          continue;
-        case '\r':
-          retval.append("\\r");
-          continue;
-        case '\"':
-          retval.append("\\\"");
-          continue;
-        case '\'':
-          retval.append("\\\'");
-          continue;
-        case '\\':
-          retval.append("\\\\");
-          continue;
-        default:
-          if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {
-            String s = "0000" + Integer.toString(ch, 16);
-            retval.append("\\u" + s.substring(s.length() - 4, s.length()));
-          } else {
-            retval.append(ch);
-          }
-          continue;
-      }
-    }
-    return retval.toString();
-  }
-
-  /**
-   * Returns a detailed message for the Error when it is thrown by the
-   * token manager to indicate a lexical error.
-   * Parameters :
-   *    EOFSeen     : indicates if EOF caused the lexical error
-   *    curLexState : lexical state in which this error occurred
-   *    errorLine   : line number when the error occurred
-   *    errorColumn : column number when the error occurred
-   *    errorAfter  : prefix that was seen before this error occurred
-   *    curchar     : the offending character
-   * Note: You can customize the lexical error message by modifying this method.
-   */
-  protected static String LexicalError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, char curChar) {
-    return("Lexical error at line " +
-          errorLine + ", column " +
-          errorColumn + ".  Encountered: " +
-          (EOFSeen ? "<EOF> " : ("\"" + addEscapes(String.valueOf(curChar)) + "\"") + " (" + (int)curChar + "), ") +
-          "after : \"" + addEscapes(errorAfter) + "\"");
-  }
-
-  /**
-   * You can also modify the body of this method to customize your error messages.
-   * For example, cases like LOOP_DETECTED and INVALID_LEXICAL_STATE are not
-   * of end-users concern, so you can return something like :
-   *
-   *     "Internal Error : Please file a bug report .... "
-   *
-   * from this method for such cases in the release version of your parser.
-   */
-  public String getMessage() {
-    return super.getMessage();
-  }
-
-  /*
-   * Constructors of various flavors follow.
-   */
-
-  /** No arg constructor. */
-  public TokenMgrError() {
-  }
-
-  /** Constructor with message and reason. */
-  public TokenMgrError(String message, int reason) {
-    super(message);
-    errorCode = reason;
-  }
-
-  /** Full Constructor. */
-  public TokenMgrError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, char curChar, int reason) {
-    this(LexicalError(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason);
-  }
-}
-/* JavaCC - OriginalChecksum=3f827858bf5c87e5502cccca67d9b325 (do not edit this line) */
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ANDExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ANDExpression.java
deleted file mode 100644 (file)
index 8ced2c1..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> EqualityExpression()
- * f1 -> [ "&" ANDExpression() ]
- * </PRE>
- */
-public class ANDExpression implements Node {
-   public EqualityExpression f0;
-   public NodeOptional f1;
-
-   public ANDExpression(EqualityExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AdditiveExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AdditiveExpression.java
deleted file mode 100644 (file)
index f0c2f33..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> MultiplicativeExpression()
- * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
- * </PRE>
- */
-public class AdditiveExpression implements Node {
-   public MultiplicativeExpression f0;
-   public NodeOptional f1;
-
-   public AdditiveExpression(MultiplicativeExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ArgumentExpressionList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ArgumentExpressionList.java
deleted file mode 100644 (file)
index 0d93ab6..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> AssignmentOrTypeExpression()
- * f1 -> ( "," AssignmentOrTypeExpression() )*
- * </PRE>
- */
-public class ArgumentExpressionList implements Node {
-   public AssignmentOrTypeExpression f0;
-   public NodeListOptional f1;
-
-   public ArgumentExpressionList(AssignmentOrTypeExpression n0, NodeListOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Array.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Array.java
deleted file mode 100644 (file)
index 2d2798d..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> "["
- * f1 -> [ ConstantExpression() ]
- * f2 -> "]"
- * </PRE>
- */
-public class Array implements Node {
-   public NodeToken f0;
-   public NodeOptional f1;
-   public NodeToken f2;
-
-   public Array(NodeToken n0, NodeOptional n1, NodeToken n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-   }
-
-   public Array(NodeOptional n0) {
-      f0 = new NodeToken("[");
-      f1 = n0;
-      f2 = new NodeToken("]");
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentExpression.java
deleted file mode 100644 (file)
index 1dc2606..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
- *       | ConditionalExpression()
- * </PRE>
- */
-public class AssignmentExpression implements Node {
-   public NodeChoice f0;
-
-   public AssignmentExpression(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentOperator.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentOperator.java
deleted file mode 100644 (file)
index 76b5bfb..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
- * </PRE>
- */
-public class AssignmentOperator implements Node {
-   public NodeChoice f0;
-
-   public AssignmentOperator(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentOrTypeExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/AssignmentOrTypeExpression.java
deleted file mode 100644 (file)
index 2d118d2..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> NoIdentifierTypeSpecifier()
- *       | AssignmentExpression()
- * </PRE>
- */
-public class AssignmentOrTypeExpression implements Node {
-   public NodeChoice f0;
-
-   public AssignmentOrTypeExpression(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/CastExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/CastExpression.java
deleted file mode 100644 (file)
index 8a420c5..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
- * </PRE>
- */
-public class CastExpression implements Node {
-   public NodeChoice f0;
-
-   public CastExpression(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/CompoundStatement.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/CompoundStatement.java
deleted file mode 100644 (file)
index 18e7e6d..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> "{"
- * f1 -> ( LocalVariableDeclaration() | Statement() )*
- * f2 -> "}"
- * </PRE>
- */
-public class CompoundStatement implements Node {
-   public NodeToken f0;
-   public NodeListOptional f1;
-   public NodeToken f2;
-
-   public CompoundStatement(NodeToken n0, NodeListOptional n1, NodeToken n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-   }
-
-   public CompoundStatement(NodeListOptional n0) {
-      f0 = new NodeToken("{");
-      f1 = n0;
-      f2 = new NodeToken("}");
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ConditionalExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ConditionalExpression.java
deleted file mode 100644 (file)
index 404ec90..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> LogicalORExpression()
- * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
- * </PRE>
- */
-public class ConditionalExpression implements Node {
-   public LogicalORExpression f0;
-   public NodeOptional f1;
-
-   public ConditionalExpression(LogicalORExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Constant.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Constant.java
deleted file mode 100644 (file)
index 6ccd64a..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> &lt;INTEGER_LITERAL&gt;
- *       | &lt;FLOATING_POINT_LITERAL&gt;
- *       | &lt;CHARACTER_LITERAL&gt;
- *       | &lt;STRING_LITERAL&gt;
- * </PRE>
- */
-public class Constant implements Node {
-   public NodeChoice f0;
-
-   public Constant(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ConstantExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ConstantExpression.java
deleted file mode 100644 (file)
index e1024c4..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ConditionalExpression()
- * </PRE>
- */
-public class ConstantExpression implements Node {
-   public ConditionalExpression f0;
-
-   public ConstantExpression(ConditionalExpression n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/DataType.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/DataType.java
deleted file mode 100644 (file)
index e99a46a..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> StructOrUnionSpecifier()
- * f1 -> &lt;IDENTIFIER&gt;
- * </PRE>
- */
-public class DataType implements Node {
-   public StructOrUnionSpecifier f0;
-   public NodeToken f1;
-
-   public DataType(StructOrUnionSpecifier n0, NodeToken n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EnumSpecifier.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EnumSpecifier.java
deleted file mode 100644 (file)
index 5bb08fa..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> &lt;ENUM&gt;
- * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
- * </PRE>
- */
-public class EnumSpecifier implements Node {
-   public NodeToken f0;
-   public NodeChoice f1;
-
-   public EnumSpecifier(NodeToken n0, NodeChoice n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public EnumSpecifier(NodeChoice n0) {
-      f0 = new NodeToken("enum");
-      f1 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Enumerator.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Enumerator.java
deleted file mode 100644 (file)
index 305cf69..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> &lt;IDENTIFIER&gt;
- * f1 -> [ "=" ConstantExpression() ]
- * </PRE>
- */
-public class Enumerator implements Node {
-   public NodeToken f0;
-   public NodeOptional f1;
-
-   public Enumerator(NodeToken n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EnumeratorList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EnumeratorList.java
deleted file mode 100644 (file)
index ba72c06..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> Enumerator()
- * f1 -> ( "," Enumerator() )*
- * </PRE>
- */
-public class EnumeratorList implements Node {
-   public Enumerator f0;
-   public NodeListOptional f1;
-
-   public EnumeratorList(Enumerator n0, NodeListOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EqualityExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/EqualityExpression.java
deleted file mode 100644 (file)
index 44157bb..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> RelationalExpression()
- * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
- * </PRE>
- */
-public class EqualityExpression implements Node {
-   public RelationalExpression f0;
-   public NodeOptional f1;
-
-   public EqualityExpression(RelationalExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExclusiveORExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExclusiveORExpression.java
deleted file mode 100644 (file)
index d80f409..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ANDExpression()
- * f1 -> [ "^" ExclusiveORExpression() ]
- * </PRE>
- */
-public class ExclusiveORExpression implements Node {
-   public ANDExpression f0;
-   public NodeOptional f1;
-
-   public ExclusiveORExpression(ANDExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Expression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Expression.java
deleted file mode 100644 (file)
index e8f021a..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> AssignmentExpression()
- * f1 -> ( "," AssignmentExpression() )*
- * </PRE>
- */
-public class Expression implements Node {
-   public AssignmentExpression f0;
-   public NodeListOptional f1;
-
-   public Expression(AssignmentExpression n0, NodeListOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExpressionStatement.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExpressionStatement.java
deleted file mode 100644 (file)
index d6f2382..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> [ Expression() ]
- * f1 -> ";"
- * </PRE>
- */
-public class ExpressionStatement implements Node {
-   public NodeOptional f0;
-   public NodeToken f1;
-
-   public ExpressionStatement(NodeOptional n0, NodeToken n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public ExpressionStatement(NodeOptional n0) {
-      f0 = n0;
-      f1 = new NodeToken(";");
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExternalDeclaration.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ExternalDeclaration.java
deleted file mode 100644 (file)
index 9d35928..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( StorageClassSpecifier() )*
- * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
- * </PRE>
- */
-public class ExternalDeclaration implements Node {
-   public NodeListOptional f0;
-   public NodeChoice f1;
-
-   public ExternalDeclaration(NodeListOptional n0, NodeChoice n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/FunctionDeclaration.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/FunctionDeclaration.java
deleted file mode 100644 (file)
index 54da9f7..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> TypeSpecifier()
- * f1 -> &lt;IDENTIFIER&gt;
- * f2 -> "("
- * f3 -> [ ParameterList() ]
- * f4 -> ")"
- * f5 -> ( ";" | CompoundStatement() )
- * </PRE>
- */
-public class FunctionDeclaration implements Node {
-   public TypeSpecifier f0;
-   public NodeToken f1;
-   public NodeToken f2;
-   public NodeOptional f3;
-   public NodeToken f4;
-   public NodeChoice f5;
-
-   public FunctionDeclaration(TypeSpecifier n0, NodeToken n1, NodeToken n2, NodeOptional n3, NodeToken n4, NodeChoice n5) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = n3;
-      f4 = n4;
-      f5 = n5;
-   }
-
-   public FunctionDeclaration(TypeSpecifier n0, NodeToken n1, NodeOptional n2, NodeChoice n3) {
-      f0 = n0;
-      f1 = n1;
-      f2 = new NodeToken("(");
-      f3 = n2;
-      f4 = new NodeToken(")");
-      f5 = n3;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/FunctionType.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/FunctionType.java
deleted file mode 100644 (file)
index 263e73e..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> TypeSpecifier()
- * f1 -> "("
- * f2 -> "*"
- * f3 -> &lt;IDENTIFIER&gt;
- * f4 -> ")"
- * f5 -> "("
- * f6 -> [ ParameterList() ]
- * f7 -> ")"
- * </PRE>
- */
-public class FunctionType implements Node {
-   public TypeSpecifier f0;
-   public NodeToken f1;
-   public NodeToken f2;
-   public NodeToken f3;
-   public NodeToken f4;
-   public NodeToken f5;
-   public NodeOptional f6;
-   public NodeToken f7;
-
-   public FunctionType(TypeSpecifier n0, NodeToken n1, NodeToken n2, NodeToken n3, NodeToken n4, NodeToken n5, NodeOptional n6, NodeToken n7) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = n3;
-      f4 = n4;
-      f5 = n5;
-      f6 = n6;
-      f7 = n7;
-   }
-
-   public FunctionType(TypeSpecifier n0, NodeToken n1, NodeOptional n2) {
-      f0 = n0;
-      f1 = new NodeToken("(");
-      f2 = new NodeToken("*");
-      f3 = n1;
-      f4 = new NodeToken(")");
-      f5 = new NodeToken("(");
-      f6 = n2;
-      f7 = new NodeToken(")");
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/IdentifierList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/IdentifierList.java
deleted file mode 100644 (file)
index 7df6de8..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> &lt;IDENTIFIER&gt;
- * f1 -> ( "," &lt;IDENTIFIER&gt; )*
- * </PRE>
- */
-public class IdentifierList implements Node {
-   public NodeToken f0;
-   public NodeListOptional f1;
-
-   public IdentifierList(NodeToken n0, NodeListOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InclusiveORExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InclusiveORExpression.java
deleted file mode 100644 (file)
index 9d97237..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ExclusiveORExpression()
- * f1 -> [ "|" InclusiveORExpression() ]
- * </PRE>
- */
-public class InclusiveORExpression implements Node {
-   public ExclusiveORExpression f0;
-   public NodeOptional f1;
-
-   public InclusiveORExpression(ExclusiveORExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitDeclarator.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitDeclarator.java
deleted file mode 100644 (file)
index 27cd735..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> &lt;IDENTIFIER&gt;
- * f1 -> [ Array() ]
- * f2 -> [ "=" Initializer() ]
- * </PRE>
- */
-public class InitDeclarator implements Node {
-   public NodeToken f0;
-   public NodeOptional f1;
-   public NodeOptional f2;
-
-   public InitDeclarator(NodeToken n0, NodeOptional n1, NodeOptional n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitDeclaratorList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitDeclaratorList.java
deleted file mode 100644 (file)
index 0323a18..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> InitDeclarator()
- * f1 -> ( "," InitDeclarator() )*
- * </PRE>
- */
-public class InitDeclaratorList implements Node {
-   public InitDeclarator f0;
-   public NodeListOptional f1;
-
-   public InitDeclaratorList(InitDeclarator n0, NodeListOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Initializer.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Initializer.java
deleted file mode 100644 (file)
index e7e03b9..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
- * </PRE>
- */
-public class Initializer implements Node {
-   public NodeChoice f0;
-
-   public Initializer(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitializerList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/InitializerList.java
deleted file mode 100644 (file)
index 9216025..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> Initializer()
- * f1 -> ( "," Initializer() )*
- * </PRE>
- */
-public class InitializerList implements Node {
-   public Initializer f0;
-   public NodeListOptional f1;
-
-   public InitializerList(Initializer n0, NodeListOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/IterationStatement.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/IterationStatement.java
deleted file mode 100644 (file)
index c9ba919..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
- * </PRE>
- */
-public class IterationStatement implements Node {
-   public NodeChoice f0;
-
-   public IterationStatement(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/JumpStatement.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/JumpStatement.java
deleted file mode 100644 (file)
index 7341aad..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
- * </PRE>
- */
-public class JumpStatement implements Node {
-   public NodeChoice f0;
-
-   public JumpStatement(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LabeledStatement.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LabeledStatement.java
deleted file mode 100644 (file)
index 5f4ef4f..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
- * </PRE>
- */
-public class LabeledStatement implements Node {
-   public NodeChoice f0;
-
-   public LabeledStatement(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LocalVariableDeclaration.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LocalVariableDeclaration.java
deleted file mode 100644 (file)
index 8337772..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> [ &lt;STATIC&gt; ]
- * f1 -> VariableDeclaration()
- * </PRE>
- */
-public class LocalVariableDeclaration implements Node {
-   public NodeOptional f0;
-   public VariableDeclaration f1;
-
-   public LocalVariableDeclaration(NodeOptional n0, VariableDeclaration n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LogicalANDExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LogicalANDExpression.java
deleted file mode 100644 (file)
index b353bb7..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> InclusiveORExpression()
- * f1 -> [ "&&" LogicalANDExpression() ]
- * </PRE>
- */
-public class LogicalANDExpression implements Node {
-   public InclusiveORExpression f0;
-   public NodeOptional f1;
-
-   public LogicalANDExpression(InclusiveORExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LogicalORExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/LogicalORExpression.java
deleted file mode 100644 (file)
index 87f8d0d..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> LogicalANDExpression()
- * f1 -> [ "||" LogicalORExpression() ]
- * </PRE>
- */
-public class LogicalORExpression implements Node {
-   public LogicalANDExpression f0;
-   public NodeOptional f1;
-
-   public LogicalORExpression(LogicalANDExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/MultiplicativeExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/MultiplicativeExpression.java
deleted file mode 100644 (file)
index 9b801d1..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> CastExpression()
- * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
- * </PRE>
- */
-public class MultiplicativeExpression implements Node {
-   public CastExpression f0;
-   public NodeOptional f1;
-
-   public MultiplicativeExpression(CastExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NoIdentifierTypeSpecifier.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NoIdentifierTypeSpecifier.java
deleted file mode 100644 (file)
index ff4fc41..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> [ &lt;CONST&gt; ]
- * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
- * f2 -> [ Pointer() ]
- * f3 -> [ Array() ]
- * </PRE>
- */
-public class NoIdentifierTypeSpecifier implements Node {
-   public NodeOptional f0;
-   public NodeChoice f1;
-   public NodeOptional f2;
-   public NodeOptional f3;
-
-   public NoIdentifierTypeSpecifier(NodeOptional n0, NodeChoice n1, NodeOptional n2, NodeOptional n3) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = n3;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Node.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Node.java
deleted file mode 100644 (file)
index 4ea3904..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * The interface which all syntax tree classes must implement.
- */
-public interface Node extends java.io.Serializable {
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v);
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu);
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v);
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu);
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeChoice.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeChoice.java
deleted file mode 100644 (file)
index ff9a66d..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Represents a grammar choice, e.g. ( A | B )
- */
-public class NodeChoice implements Node {
-   public NodeChoice(Node node) {
-      this(node, -1);
-   }
-
-   public NodeChoice(Node node, int whichChoice) {
-      choice = node;
-      which = whichChoice;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      choice.accept(v);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return choice.accept(v,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return choice.accept(v);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      choice.accept(v,argu);
-   }
-
-   public Node choice;
-   public int which;
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeList.java
deleted file mode 100644 (file)
index 36352b0..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-import java.util.*;
-
-/**
- * Represents a grammar list, e.g. ( A )+
- */
-public class NodeList implements NodeListInterface {
-   public NodeList() {
-      nodes = new Vector<Node>();
-   }
-
-   public NodeList(Node firstNode) {
-      nodes = new Vector<Node>();
-      addNode(firstNode);
-   }
-
-   public void addNode(Node n) {
-      nodes.addElement(n);
-   }
-
-   public Enumeration<Node> elements() { return nodes.elements(); }
-   public Node elementAt(int i)  { return nodes.elementAt(i); }
-   public int size()             { return nodes.size(); }
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-
-   public Vector<Node> nodes;
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeListInterface.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeListInterface.java
deleted file mode 100644 (file)
index 5b37ab5..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * The interface which NodeList, NodeListOptional, and NodeSequence
- * implement.
- */
-public interface NodeListInterface extends Node {
-   public void addNode(Node n);
-   public Node elementAt(int i);
-   public java.util.Enumeration<Node> elements();
-   public int size();
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v);
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu);
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v);
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu);
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeListOptional.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeListOptional.java
deleted file mode 100644 (file)
index 73ca45f..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-import java.util.*;
-
-/**
- * Represents an optional grammar list, e.g. ( A )*
- */
-public class NodeListOptional implements NodeListInterface {
-   public NodeListOptional() {
-      nodes = new Vector<Node>();
-   }
-
-   public NodeListOptional(Node firstNode) {
-      nodes = new Vector<Node>();
-      addNode(firstNode);
-   }
-
-   public void addNode(Node n) {
-      nodes.addElement(n);
-   }
-
-   public Enumeration<Node> elements() { return nodes.elements(); }
-   public Node elementAt(int i)  { return nodes.elementAt(i); }
-   public int size()             { return nodes.size(); }
-   public boolean present()      { return nodes.size() != 0; }
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-
-   public Vector<Node> nodes;
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeOptional.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeOptional.java
deleted file mode 100644 (file)
index 364c7c6..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Represents an grammar optional node, e.g. ( A )? or [ A ]
- */
-public class NodeOptional implements Node {
-   public NodeOptional() {
-      node = null;
-   }
-
-   public NodeOptional(Node n) {
-      addNode(n);
-   }
-
-   public void addNode(Node n)  {
-      if ( node != null)                // Oh oh!
-         throw new Error("Attempt to set optional node twice");
-
-      node = n;
-   }
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-   public boolean present()   { return node != null; }
-
-   public Node node;
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeSequence.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeSequence.java
deleted file mode 100644 (file)
index 63c0978..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-import java.util.*;
-
-/**
- * Represents a sequence of nodes nested within a choice, list,
- * optional list, or optional, e.g. ( A B )+ or [ C D E ]
- */
-public class NodeSequence implements NodeListInterface {
-   public NodeSequence(int n) {
-      nodes = new Vector<Node>(n);
-   }
-
-   public NodeSequence(Node firstNode) {
-      nodes = new Vector<Node>();
-      addNode(firstNode);
-   }
-
-   public void addNode(Node n) {
-      nodes.addElement(n);
-   }
-
-   public Node elementAt(int i)  { return nodes.elementAt(i); }
-   public Enumeration<Node> elements() { return nodes.elements(); }
-   public int size()             { return nodes.size(); }
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-
-   public Vector<Node> nodes;
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeToken.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/NodeToken.java
deleted file mode 100644 (file)
index 90db44d..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-import java.util.*;
-/**
- * Represents a single token in the grammar.  If the "-tk" option
- * is used, also contains a Vector of preceding special tokens.
- */
-public class NodeToken implements Node {
-   public NodeToken(String s) {
-      this(s, -1, -1, -1, -1, -1);    }
-
-   public NodeToken(String s, int kind, int beginLine, int beginColumn, int endLine, int endColumn) {
-      tokenImage = s;
-      specialTokens = null;
-      this.kind = kind;
-      this.beginLine = beginLine;
-      this.beginColumn = beginColumn;
-      this.endLine = endLine;
-      this.endColumn = endColumn;
-   }
-
-   public NodeToken getSpecialAt(int i) {
-      if ( specialTokens == null )
-         throw new java.util.NoSuchElementException("No specials in token");
-      return specialTokens.elementAt(i);
-   }
-
-   public int numSpecials() {
-      if ( specialTokens == null ) return 0;
-      return specialTokens.size();
-   }
-
-   public void addSpecial(NodeToken s) {
-      if ( specialTokens == null ) specialTokens = new Vector<NodeToken>();
-      specialTokens.addElement(s);
-   }
-
-   public void trimSpecials() {
-      if ( specialTokens == null ) return;
-      specialTokens.trimToSize();
-   }
-
-   public String toString()     { return tokenImage; }
-
-   public String withSpecials() {
-      if ( specialTokens == null )
-          return tokenImage;
-
-       StringBuffer buf = new StringBuffer();
-
-       for ( Enumeration<NodeToken> e = specialTokens.elements(); e.hasMoreElements(); )
-          buf.append(e.nextElement().toString());
-
-       buf.append(tokenImage);
-       return buf.toString();
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-
-   public String tokenImage;
-
-   // Stores a list of NodeTokens
-   public Vector<NodeToken> specialTokens;
-
-   // -1 for these ints means no position info is available.
-   public int beginLine, beginColumn, endLine, endColumn;
-
-   // Equal to the JavaCC token "kind" integer.
-   // -1 if not available.
-   public int kind;
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ParameterDeclaration.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ParameterDeclaration.java
deleted file mode 100644 (file)
index da7a71d..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> TypeSpecifier()
- * f1 -> &lt;IDENTIFIER&gt;
- * f2 -> [ Array() ]
- * </PRE>
- */
-public class ParameterDeclaration implements Node {
-   public TypeSpecifier f0;
-   public NodeToken f1;
-   public NodeOptional f2;
-
-   public ParameterDeclaration(TypeSpecifier n0, NodeToken n1, NodeOptional n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ParameterList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ParameterList.java
deleted file mode 100644 (file)
index d92fd41..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ParameterDeclaration()
- * f1 -> ( "," ParameterDeclaration() )*
- * f2 -> [ "," "..." ]
- * </PRE>
- */
-public class ParameterList implements Node {
-   public ParameterDeclaration f0;
-   public NodeListOptional f1;
-   public NodeOptional f2;
-
-   public ParameterList(ParameterDeclaration n0, NodeListOptional n1, NodeOptional n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Pointer.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Pointer.java
deleted file mode 100644 (file)
index 56f175e..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> "*"
- * f1 -> [ &lt;CONST&gt; ]
- * f2 -> [ Pointer() ]
- * </PRE>
- */
-public class Pointer implements Node {
-   public NodeToken f0;
-   public NodeOptional f1;
-   public NodeOptional f2;
-
-   public Pointer(NodeToken n0, NodeOptional n1, NodeOptional n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-   }
-
-   public Pointer(NodeOptional n0, NodeOptional n1) {
-      f0 = new NodeToken("*");
-      f1 = n0;
-      f2 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/PostfixExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/PostfixExpression.java
deleted file mode 100644 (file)
index 52e1415..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> PrimaryExpression()
- * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
- * </PRE>
- */
-public class PostfixExpression implements Node {
-   public PrimaryExpression f0;
-   public NodeListOptional f1;
-
-   public PostfixExpression(PrimaryExpression n0, NodeListOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/PrimaryExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/PrimaryExpression.java
deleted file mode 100644 (file)
index fb953dc..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> &lt;IDENTIFIER&gt;
- *       | Constant()
- *       | "(" Expression() ")"
- * </PRE>
- */
-public class PrimaryExpression implements Node {
-   public NodeChoice f0;
-
-   public PrimaryExpression(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/RelationalExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/RelationalExpression.java
deleted file mode 100644 (file)
index 5b82307..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ShiftExpression()
- * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
- * </PRE>
- */
-public class RelationalExpression implements Node {
-   public ShiftExpression f0;
-   public NodeOptional f1;
-
-   public RelationalExpression(ShiftExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/SelectionStatement.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/SelectionStatement.java
deleted file mode 100644 (file)
index e3da4cf..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
- * </PRE>
- */
-public class SelectionStatement implements Node {
-   public NodeChoice f0;
-
-   public SelectionStatement(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ShiftExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/ShiftExpression.java
deleted file mode 100644 (file)
index b3c9e5b..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> AdditiveExpression()
- * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
- * </PRE>
- */
-public class ShiftExpression implements Node {
-   public AdditiveExpression f0;
-   public NodeOptional f1;
-
-   public ShiftExpression(AdditiveExpression n0, NodeOptional n1) {
-      f0 = n0;
-      f1 = n1;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Statement.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/Statement.java
deleted file mode 100644 (file)
index 27148df..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
- * </PRE>
- */
-public class Statement implements Node {
-   public NodeChoice f0;
-
-   public Statement(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StorageClassSpecifier.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StorageClassSpecifier.java
deleted file mode 100644 (file)
index 223839f..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
- * </PRE>
- */
-public class StorageClassSpecifier implements Node {
-   public NodeChoice f0;
-
-   public StorageClassSpecifier(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructDeclaration.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructDeclaration.java
deleted file mode 100644 (file)
index 074ec42..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> TypeSpecifier()
- * f1 -> &lt;IDENTIFIER&gt;
- * f2 -> [ Array() | ":" ConstantExpression() ]
- * f3 -> [ &lt;IDENTIFIER&gt; ]
- * f4 -> ";"
- * </PRE>
- */
-public class StructDeclaration implements Node {
-   public TypeSpecifier f0;
-   public NodeToken f1;
-   public NodeOptional f2;
-   public NodeOptional f3;
-   public NodeToken f4;
-
-   public StructDeclaration(TypeSpecifier n0, NodeToken n1, NodeOptional n2, NodeOptional n3, NodeToken n4) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = n3;
-      f4 = n4;
-   }
-
-   public StructDeclaration(TypeSpecifier n0, NodeToken n1, NodeOptional n2, NodeOptional n3) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = n3;
-      f4 = new NodeToken(";");
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructDeclarationList.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructDeclarationList.java
deleted file mode 100644 (file)
index 32d0814..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( StructDeclaration() )+
- * </PRE>
- */
-public class StructDeclarationList implements Node {
-   public NodeList f0;
-
-   public StructDeclarationList(NodeList n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructOrUnion.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructOrUnion.java
deleted file mode 100644 (file)
index 2131d7a..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
- * </PRE>
- */
-public class StructOrUnion implements Node {
-   public NodeChoice f0;
-
-   public StructOrUnion(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructOrUnionSpecifier.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/StructOrUnionSpecifier.java
deleted file mode 100644 (file)
index aa64929..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
- *       | StructOrUnion() &lt;IDENTIFIER&gt;
- * </PRE>
- */
-public class StructOrUnionSpecifier implements Node {
-   public NodeChoice f0;
-
-   public StructOrUnionSpecifier(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TranslationUnit.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TranslationUnit.java
deleted file mode 100644 (file)
index feb48f6..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( ExternalDeclaration() )+
- * </PRE>
- */
-public class TranslationUnit implements Node {
-   public NodeList f0;
-
-   public TranslationUnit(NodeList n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TypeDeclaration.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TypeDeclaration.java
deleted file mode 100644 (file)
index 500aeca..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> &lt;TYPEDEF&gt;
- * f1 -> ( DataType() | FunctionType() )
- * f2 -> ";"
- * </PRE>
- */
-public class TypeDeclaration implements Node {
-   public NodeToken f0;
-   public NodeChoice f1;
-   public NodeToken f2;
-
-   public TypeDeclaration(NodeToken n0, NodeChoice n1, NodeToken n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-   }
-
-   public TypeDeclaration(NodeChoice n0) {
-      f0 = new NodeToken("typedef");
-      f1 = n0;
-      f2 = new NodeToken(";");
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TypeSpecifier.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/TypeSpecifier.java
deleted file mode 100644 (file)
index 6d1607d..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> [ &lt;CONST&gt; ]
- * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
- * f2 -> [ Pointer() ]
- * f3 -> [ Array() ]
- * </PRE>
- */
-public class TypeSpecifier implements Node {
-   public NodeOptional f0;
-   public NodeChoice f1;
-   public NodeOptional f2;
-   public NodeOptional f3;
-
-   public TypeSpecifier(NodeOptional n0, NodeChoice n1, NodeOptional n2, NodeOptional n3) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = n3;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/UnaryExpression.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/UnaryExpression.java
deleted file mode 100644 (file)
index 1e7894e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
- * </PRE>
- */
-public class UnaryExpression implements Node {
-   public NodeChoice f0;
-
-   public UnaryExpression(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/UnaryOperator.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/UnaryOperator.java
deleted file mode 100644 (file)
index 630af9d..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
- * </PRE>
- */
-public class UnaryOperator implements Node {
-   public NodeChoice f0;
-
-   public UnaryOperator(NodeChoice n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/VariableClassSpecifier.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/VariableClassSpecifier.java
deleted file mode 100644 (file)
index 5a91019..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
- * </PRE>
- */
-public class VariableClassSpecifier implements Node {
-   public NodeListOptional f0;
-
-   public VariableClassSpecifier(NodeListOptional n0) {
-      f0 = n0;
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/VariableDeclaration.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/nodes/VariableDeclaration.java
deleted file mode 100644 (file)
index aa7cf6e..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.nodes;
-
-/**
- * Grammar production:
- * <PRE>
- * f0 -> VariableClassSpecifier()
- * f1 -> TypeSpecifier()
- * f2 -> InitDeclaratorList()
- * f3 -> ";"
- * </PRE>
- */
-public class VariableDeclaration implements Node {
-   public VariableClassSpecifier f0;
-   public TypeSpecifier f1;
-   public InitDeclaratorList f2;
-   public NodeToken f3;
-
-   public VariableDeclaration(VariableClassSpecifier n0, TypeSpecifier n1, InitDeclaratorList n2, NodeToken n3) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = n3;
-   }
-
-   public VariableDeclaration(VariableClassSpecifier n0, TypeSpecifier n1, InitDeclaratorList n2) {
-      f0 = n0;
-      f1 = n1;
-      f2 = n2;
-      f3 = new NodeToken(";");
-   }
-
-   public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) {
-      v.visit(this);
-   }
-   public <R,A> R accept(org.gnunet.seaspider.parser.visitors.GJVisitor<R,A> v, A argu) {
-      return v.visit(this,argu);
-   }
-   public <R> R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor<R> v) {
-      return v.visit(this);
-   }
-   public <A> void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor<A> v, A argu) {
-      v.visit(this,argu);
-   }
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/DepthFirstVisitor.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/DepthFirstVisitor.java
deleted file mode 100644 (file)
index 57c92b7..0000000
+++ /dev/null
@@ -1,701 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * Provides default methods which visit each node in the tree in depth-first
- * order.  Your visitors may extend this class.
- */
-public class DepthFirstVisitor implements Visitor {
-   //
-   // Auto class visitors--probably don't need to be overridden.
-   //
-   public void visit(NodeList n) {
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); )
-         e.nextElement().accept(this);
-   }
-
-   public void visit(NodeListOptional n) {
-      if ( n.present() )
-         for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); )
-            e.nextElement().accept(this);
-   }
-
-   public void visit(NodeOptional n) {
-      if ( n.present() )
-         n.node.accept(this);
-   }
-
-   public void visit(NodeSequence n) {
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); )
-         e.nextElement().accept(this);
-   }
-
-   public void visit(NodeToken n) { }
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public void visit(TranslationUnit n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public void visit(ExternalDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public void visit(FunctionDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      n.f4.accept(this);
-      n.f5.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public void visit(StorageClassSpecifier n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public void visit(TypeDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(DataType n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public void visit(FunctionType n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      n.f4.accept(this);
-      n.f5.accept(this);
-      n.f6.accept(this);
-      n.f7.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public void visit(ParameterList n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(ParameterDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public void visit(VariableDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public void visit(LocalVariableDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public void visit(VariableClassSpecifier n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(TypeSpecifier n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(NoIdentifierTypeSpecifier n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(StructOrUnionSpecifier n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public void visit(StructOrUnion n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public void visit(StructDeclarationList n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public void visit(InitDeclaratorList n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public void visit(InitDeclarator n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public void visit(StructDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      n.f4.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public void visit(EnumSpecifier n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public void visit(EnumeratorList n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public void visit(Enumerator n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public void visit(Pointer n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public void visit(IdentifierList n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public void visit(Initializer n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public void visit(InitializerList n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public void visit(Array n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public void visit(Statement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public void visit(LabeledStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public void visit(ExpressionStatement n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public void visit(CompoundStatement n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public void visit(SelectionStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public void visit(IterationStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public void visit(JumpStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public void visit(Expression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public void visit(AssignmentOperator n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public void visit(ConditionalExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(ConstantExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalORExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalANDExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(InclusiveORExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(ExclusiveORExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public void visit(ANDExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public void visit(EqualityExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public void visit(RelationalExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public void visit(ShiftExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public void visit(AdditiveExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public void visit(MultiplicativeExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public void visit(CastExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public void visit(UnaryExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public void visit(UnaryOperator n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public void visit(PostfixExpression n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public void visit(PrimaryExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public void visit(ArgumentExpressionList n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentOrTypeExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public void visit(Constant n) {
-      n.f0.accept(this);
-   }
-
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJDepthFirst.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJDepthFirst.java
deleted file mode 100644 (file)
index 2ac3fd8..0000000
+++ /dev/null
@@ -1,837 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * Provides default methods which visit each node in the tree in depth-first
- * order.  Your visitors may extend this class.
- */
-public class GJDepthFirst<R,A> implements GJVisitor<R,A> {
-   //
-   // Auto class visitors--probably don't need to be overridden.
-   //
-   public R visit(NodeList n, A argu) {
-      R _ret=null;
-      int _count=0;
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-         e.nextElement().accept(this,argu);
-         _count++;
-      }
-      return _ret;
-   }
-
-   public R visit(NodeListOptional n, A argu) {
-      if ( n.present() ) {
-         R _ret=null;
-         int _count=0;
-         for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-            e.nextElement().accept(this,argu);
-            _count++;
-         }
-         return _ret;
-      }
-      else
-         return null;
-   }
-
-   public R visit(NodeOptional n, A argu) {
-      if ( n.present() )
-         return n.node.accept(this,argu);
-      else
-         return null;
-   }
-
-   public R visit(NodeSequence n, A argu) {
-      R _ret=null;
-      int _count=0;
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-         e.nextElement().accept(this,argu);
-         _count++;
-      }
-      return _ret;
-   }
-
-   public R visit(NodeToken n, A argu) { return null; }
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public R visit(TranslationUnit n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public R visit(ExternalDeclaration n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public R visit(FunctionDeclaration n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      n.f4.accept(this, argu);
-      n.f5.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public R visit(StorageClassSpecifier n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public R visit(TypeDeclaration n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(DataType n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public R visit(FunctionType n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      n.f4.accept(this, argu);
-      n.f5.accept(this, argu);
-      n.f6.accept(this, argu);
-      n.f7.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public R visit(ParameterList n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(ParameterDeclaration n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public R visit(VariableDeclaration n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public R visit(LocalVariableDeclaration n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public R visit(VariableClassSpecifier n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(TypeSpecifier n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(NoIdentifierTypeSpecifier n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(StructOrUnionSpecifier n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public R visit(StructOrUnion n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public R visit(StructDeclarationList n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public R visit(InitDeclaratorList n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public R visit(InitDeclarator n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public R visit(StructDeclaration n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      n.f4.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public R visit(EnumSpecifier n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public R visit(EnumeratorList n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public R visit(Enumerator n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public R visit(Pointer n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public R visit(IdentifierList n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public R visit(Initializer n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public R visit(InitializerList n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public R visit(Array n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public R visit(Statement n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public R visit(LabeledStatement n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public R visit(ExpressionStatement n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public R visit(CompoundStatement n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public R visit(SelectionStatement n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public R visit(IterationStatement n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public R visit(JumpStatement n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public R visit(Expression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public R visit(AssignmentOperator n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public R visit(ConditionalExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(ConstantExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalORExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalANDExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(InclusiveORExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(ExclusiveORExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public R visit(ANDExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public R visit(EqualityExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public R visit(RelationalExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public R visit(ShiftExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public R visit(AdditiveExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public R visit(MultiplicativeExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public R visit(CastExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public R visit(UnaryExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public R visit(UnaryOperator n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public R visit(PostfixExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public R visit(PrimaryExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public R visit(ArgumentExpressionList n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentOrTypeExpression n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public R visit(Constant n, A argu) {
-      R _ret=null;
-      n.f0.accept(this, argu);
-      return _ret;
-   }
-
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJNoArguDepthFirst.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJNoArguDepthFirst.java
deleted file mode 100644 (file)
index fb13e7a..0000000
+++ /dev/null
@@ -1,837 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * Provides default methods which visit each node in the tree in depth-first
- * order.  Your visitors may extend this class.
- */
-public class GJNoArguDepthFirst<R> implements GJNoArguVisitor<R> {
-   //
-   // Auto class visitors--probably don't need to be overridden.
-   //
-   public R visit(NodeList n) {
-      R _ret=null;
-      int _count=0;
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-         e.nextElement().accept(this);
-         _count++;
-      }
-      return _ret;
-   }
-
-   public R visit(NodeListOptional n) {
-      if ( n.present() ) {
-         R _ret=null;
-         int _count=0;
-         for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-            e.nextElement().accept(this);
-            _count++;
-         }
-         return _ret;
-      }
-      else
-         return null;
-   }
-
-   public R visit(NodeOptional n) {
-      if ( n.present() )
-         return n.node.accept(this);
-      else
-         return null;
-   }
-
-   public R visit(NodeSequence n) {
-      R _ret=null;
-      int _count=0;
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-         e.nextElement().accept(this);
-         _count++;
-      }
-      return _ret;
-   }
-
-   public R visit(NodeToken n) { return null; }
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public R visit(TranslationUnit n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public R visit(ExternalDeclaration n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public R visit(FunctionDeclaration n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      n.f4.accept(this);
-      n.f5.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public R visit(StorageClassSpecifier n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public R visit(TypeDeclaration n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(DataType n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public R visit(FunctionType n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      n.f4.accept(this);
-      n.f5.accept(this);
-      n.f6.accept(this);
-      n.f7.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public R visit(ParameterList n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(ParameterDeclaration n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public R visit(VariableDeclaration n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public R visit(LocalVariableDeclaration n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public R visit(VariableClassSpecifier n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(TypeSpecifier n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(NoIdentifierTypeSpecifier n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(StructOrUnionSpecifier n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public R visit(StructOrUnion n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public R visit(StructDeclarationList n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public R visit(InitDeclaratorList n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public R visit(InitDeclarator n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public R visit(StructDeclaration n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      n.f4.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public R visit(EnumSpecifier n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public R visit(EnumeratorList n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public R visit(Enumerator n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public R visit(Pointer n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public R visit(IdentifierList n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public R visit(Initializer n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public R visit(InitializerList n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public R visit(Array n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public R visit(Statement n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public R visit(LabeledStatement n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public R visit(ExpressionStatement n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public R visit(CompoundStatement n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public R visit(SelectionStatement n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public R visit(IterationStatement n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public R visit(JumpStatement n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public R visit(Expression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public R visit(AssignmentOperator n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public R visit(ConditionalExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(ConstantExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalORExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalANDExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(InclusiveORExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(ExclusiveORExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public R visit(ANDExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public R visit(EqualityExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public R visit(RelationalExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public R visit(ShiftExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public R visit(AdditiveExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public R visit(MultiplicativeExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public R visit(CastExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public R visit(UnaryExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public R visit(UnaryOperator n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public R visit(PostfixExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public R visit(PrimaryExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public R visit(ArgumentExpressionList n) {
-      R _ret=null;
-      n.f0.accept(this);
-      n.f1.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentOrTypeExpression n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public R visit(Constant n) {
-      R _ret=null;
-      n.f0.accept(this);
-      return _ret;
-   }
-
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJNoArguVisitor.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJNoArguVisitor.java
deleted file mode 100644 (file)
index 0e32ab2..0000000
+++ /dev/null
@@ -1,508 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * All GJ visitors with no argument must implement this interface.
- */
-
-public interface GJNoArguVisitor<R> {
-
-   //
-   // GJ Auto class visitors with no argument
-   //
-
-   public R visit(NodeList n);
-   public R visit(NodeListOptional n);
-   public R visit(NodeOptional n);
-   public R visit(NodeSequence n);
-   public R visit(NodeToken n);
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public R visit(TranslationUnit n);
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public R visit(ExternalDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public R visit(FunctionDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public R visit(StorageClassSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public R visit(TypeDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(DataType n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public R visit(FunctionType n);
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public R visit(ParameterList n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(ParameterDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public R visit(VariableDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public R visit(LocalVariableDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public R visit(VariableClassSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(TypeSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(NoIdentifierTypeSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(StructOrUnionSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public R visit(StructOrUnion n);
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public R visit(StructDeclarationList n);
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public R visit(InitDeclaratorList n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public R visit(InitDeclarator n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public R visit(StructDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public R visit(EnumSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public R visit(EnumeratorList n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public R visit(Enumerator n);
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public R visit(Pointer n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public R visit(IdentifierList n);
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public R visit(Initializer n);
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public R visit(InitializerList n);
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public R visit(Array n);
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public R visit(Statement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public R visit(LabeledStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public R visit(ExpressionStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public R visit(CompoundStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public R visit(SelectionStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public R visit(IterationStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public R visit(JumpStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public R visit(Expression n);
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public R visit(AssignmentOperator n);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public R visit(ConditionalExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(ConstantExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalORExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalANDExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(InclusiveORExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(ExclusiveORExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public R visit(ANDExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public R visit(EqualityExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public R visit(RelationalExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public R visit(ShiftExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public R visit(AdditiveExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public R visit(MultiplicativeExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public R visit(CastExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public R visit(UnaryExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public R visit(UnaryOperator n);
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public R visit(PostfixExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public R visit(PrimaryExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public R visit(ArgumentExpressionList n);
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentOrTypeExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public R visit(Constant n);
-
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVisitor.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVisitor.java
deleted file mode 100644 (file)
index 431c195..0000000
+++ /dev/null
@@ -1,507 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * All GJ visitors must implement this interface.
- */
-
-public interface GJVisitor<R,A> {
-
-   //
-   // GJ Auto class visitors
-   //
-
-   public R visit(NodeList n, A argu);
-   public R visit(NodeListOptional n, A argu);
-   public R visit(NodeOptional n, A argu);
-   public R visit(NodeSequence n, A argu);
-   public R visit(NodeToken n, A argu);
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public R visit(TranslationUnit n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public R visit(ExternalDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public R visit(FunctionDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public R visit(StorageClassSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public R visit(TypeDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(DataType n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public R visit(FunctionType n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public R visit(ParameterList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(ParameterDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public R visit(VariableDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public R visit(LocalVariableDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public R visit(VariableClassSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(TypeSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public R visit(NoIdentifierTypeSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public R visit(StructOrUnionSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public R visit(StructOrUnion n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public R visit(StructDeclarationList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public R visit(InitDeclaratorList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public R visit(InitDeclarator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public R visit(StructDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public R visit(EnumSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public R visit(EnumeratorList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public R visit(Enumerator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public R visit(Pointer n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public R visit(IdentifierList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public R visit(Initializer n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public R visit(InitializerList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public R visit(Array n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public R visit(Statement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public R visit(LabeledStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public R visit(ExpressionStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public R visit(CompoundStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public R visit(SelectionStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public R visit(IterationStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public R visit(JumpStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public R visit(Expression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public R visit(AssignmentOperator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public R visit(ConditionalExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public R visit(ConstantExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalORExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public R visit(LogicalANDExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(InclusiveORExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public R visit(ExclusiveORExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public R visit(ANDExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public R visit(EqualityExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public R visit(RelationalExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public R visit(ShiftExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public R visit(AdditiveExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public R visit(MultiplicativeExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public R visit(CastExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public R visit(UnaryExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public R visit(UnaryOperator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public R visit(PostfixExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public R visit(PrimaryExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public R visit(ArgumentExpressionList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public R visit(AssignmentOrTypeExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public R visit(Constant n, A argu);
-
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVoidDepthFirst.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVoidDepthFirst.java
deleted file mode 100644 (file)
index eb49d36..0000000
+++ /dev/null
@@ -1,711 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * Provides default methods which visit each node in the tree in depth-first
- * order.  Your visitors may extend this class.
- */
-public class GJVoidDepthFirst<A> implements GJVoidVisitor<A> {
-   //
-   // Auto class visitors--probably don't need to be overridden.
-   //
-   public void visit(NodeList n, A argu) {
-      int _count=0;
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-         e.nextElement().accept(this,argu);
-         _count++;
-      }
-   }
-
-   public void visit(NodeListOptional n, A argu) {
-      if ( n.present() ) {
-         int _count=0;
-         for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-            e.nextElement().accept(this,argu);
-            _count++;
-         }
-      }
-   }
-
-   public void visit(NodeOptional n, A argu) {
-      if ( n.present() )
-         n.node.accept(this,argu);
-   }
-
-   public void visit(NodeSequence n, A argu) {
-      int _count=0;
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-         e.nextElement().accept(this,argu);
-         _count++;
-      }
-   }
-
-   public void visit(NodeToken n, A argu) {}
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public void visit(TranslationUnit n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public void visit(ExternalDeclaration n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public void visit(FunctionDeclaration n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      n.f4.accept(this, argu);
-      n.f5.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public void visit(StorageClassSpecifier n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public void visit(TypeDeclaration n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(DataType n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public void visit(FunctionType n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      n.f4.accept(this, argu);
-      n.f5.accept(this, argu);
-      n.f6.accept(this, argu);
-      n.f7.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public void visit(ParameterList n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(ParameterDeclaration n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public void visit(VariableDeclaration n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public void visit(LocalVariableDeclaration n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public void visit(VariableClassSpecifier n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(TypeSpecifier n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(NoIdentifierTypeSpecifier n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(StructOrUnionSpecifier n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public void visit(StructOrUnion n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public void visit(StructDeclarationList n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public void visit(InitDeclaratorList n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public void visit(InitDeclarator n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public void visit(StructDeclaration n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-      n.f3.accept(this, argu);
-      n.f4.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public void visit(EnumSpecifier n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public void visit(EnumeratorList n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public void visit(Enumerator n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public void visit(Pointer n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public void visit(IdentifierList n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public void visit(Initializer n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public void visit(InitializerList n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public void visit(Array n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public void visit(Statement n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public void visit(LabeledStatement n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public void visit(ExpressionStatement n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public void visit(CompoundStatement n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-      n.f2.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public void visit(SelectionStatement n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public void visit(IterationStatement n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public void visit(JumpStatement n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public void visit(Expression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentExpression n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public void visit(AssignmentOperator n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public void visit(ConditionalExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(ConstantExpression n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalORExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalANDExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(InclusiveORExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(ExclusiveORExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public void visit(ANDExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public void visit(EqualityExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public void visit(RelationalExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public void visit(ShiftExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public void visit(AdditiveExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public void visit(MultiplicativeExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public void visit(CastExpression n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public void visit(UnaryExpression n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public void visit(UnaryOperator n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public void visit(PostfixExpression n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public void visit(PrimaryExpression n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public void visit(ArgumentExpressionList n, A argu) {
-      n.f0.accept(this, argu);
-      n.f1.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentOrTypeExpression n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public void visit(Constant n, A argu) {
-      n.f0.accept(this, argu);
-   }
-
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVoidVisitor.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/GJVoidVisitor.java
deleted file mode 100644 (file)
index 13176c4..0000000
+++ /dev/null
@@ -1,508 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * All GJ void visitors must implement this interface.
- */
-
-public interface GJVoidVisitor<A> {
-
-   //
-   // GJ void Auto class visitors
-   //
-
-   public void visit(NodeList n, A argu);
-   public void visit(NodeListOptional n, A argu);
-   public void visit(NodeOptional n, A argu);
-   public void visit(NodeSequence n, A argu);
-   public void visit(NodeToken n, A argu);
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public void visit(TranslationUnit n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public void visit(ExternalDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public void visit(FunctionDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public void visit(StorageClassSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public void visit(TypeDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(DataType n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public void visit(FunctionType n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public void visit(ParameterList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(ParameterDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public void visit(VariableDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public void visit(LocalVariableDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public void visit(VariableClassSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(TypeSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(NoIdentifierTypeSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(StructOrUnionSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public void visit(StructOrUnion n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public void visit(StructDeclarationList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public void visit(InitDeclaratorList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public void visit(InitDeclarator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public void visit(StructDeclaration n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public void visit(EnumSpecifier n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public void visit(EnumeratorList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public void visit(Enumerator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public void visit(Pointer n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public void visit(IdentifierList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public void visit(Initializer n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public void visit(InitializerList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public void visit(Array n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public void visit(Statement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public void visit(LabeledStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public void visit(ExpressionStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public void visit(CompoundStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public void visit(SelectionStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public void visit(IterationStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public void visit(JumpStatement n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public void visit(Expression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public void visit(AssignmentOperator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public void visit(ConditionalExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(ConstantExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalORExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalANDExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(InclusiveORExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(ExclusiveORExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public void visit(ANDExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public void visit(EqualityExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public void visit(RelationalExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public void visit(ShiftExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public void visit(AdditiveExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public void visit(MultiplicativeExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public void visit(CastExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public void visit(UnaryExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public void visit(UnaryOperator n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public void visit(PostfixExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public void visit(PrimaryExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public void visit(ArgumentExpressionList n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentOrTypeExpression n, A argu);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public void visit(Constant n, A argu);
-
-}
-
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/TreeDumper.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/TreeDumper.java
deleted file mode 100644 (file)
index c2e7c15..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-package org.gnunet.seaspider.parser.visitors;
-
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-import java.io.*;
-
-/**
- * Dumps the syntax tree to a Writer using the location information in
- * each NodeToken.
- */
-public class TreeDumper extends DepthFirstVisitor {
-   protected PrintWriter out;
-   private int curLine = 1;
-   private int curColumn = 1;
-   private boolean startAtNextToken = false;
-   private boolean printSpecials = true;
-
-   /**
-    * The default constructor uses System.out as its output location.
-    * You may specify your own Writer or OutputStream using one of the
-    * other constructors.
-    */
-   public TreeDumper()       { out = new PrintWriter(System.out, true); }
-   public TreeDumper(Writer o)        { out = new PrintWriter(o, true); }
-   public TreeDumper(OutputStream o)  { out = new PrintWriter(o, true); }
-
-   /**
-    * Flushes the OutputStream or Writer that this TreeDumper is using.
-    */
-   public void flushWriter()        { out.flush(); }
-
-   /**
-    * Allows you to specify whether or not to print special tokens.
-    */
-   public void printSpecials(boolean b)   { printSpecials = b; }
-
-   /**
-    * Starts the tree dumper on the line containing the next token
-    * visited.  For example, if the next token begins on line 50 and the
-    * dumper is currently on line 1 of the file, it will set its current
-    * line to 50 and continue printing from there, as opposed to
-    * printing 49 blank lines and then printing the token.
-    */
-   public void startAtNextToken()   { startAtNextToken = true; }
-
-   /**
-    * Resets the position of the output "cursor" to the first line and
-    * column.  When using a dumper on a syntax tree more than once, you
-    * either need to call this method or startAtNextToken() between each
-    * dump.
-    */
-   public void resetPosition()      { curLine = curColumn = 1; }
-
-   /**
-    * Dumps the current NodeToken to the output stream being used.
-    *
-    * @throws  IllegalStateException   if the token position is invalid
-    *   relative to the current position, i.e. its location places it
-    *   before the previous token.
-    */
-   public void visit(NodeToken n) {
-      if ( n.beginLine == -1 || n.beginColumn == -1 ) {
-         printToken(n.tokenImage);
-         return;
-      }
-
-      //
-      // Handle special tokens
-      //
-      if ( printSpecials && n.numSpecials() > 0 )
-         for ( Enumeration<NodeToken> e = n.specialTokens.elements(); e.hasMoreElements(); )
-            visit(e.nextElement());
-
-      //
-      // Handle startAtNextToken option
-      //
-      if ( startAtNextToken ) {
-         curLine = n.beginLine;
-         curColumn = 1;
-         startAtNextToken = false;
-
-         if ( n.beginColumn < curColumn )
-            out.println();
-      }
-
-      //
-      // Check for invalid token position relative to current position.
-      //
-      if ( n.beginLine < curLine )
-         throw new IllegalStateException("at token \"" + n.tokenImage +
-            "\", n.beginLine = " + Integer.toString(n.beginLine) +
-            ", curLine = " + Integer.toString(curLine));
-      else if ( n.beginLine == curLine && n.beginColumn < curColumn )
-         throw new IllegalStateException("at token \"" + n.tokenImage +
-            "\", n.beginColumn = " +
-            Integer.toString(n.beginColumn) + ", curColumn = " +
-            Integer.toString(curColumn));
-
-      //
-      // Move output "cursor" to proper location, then print the token
-      //
-      if ( curLine < n.beginLine ) {
-         curColumn = 1;
-         for ( ; curLine < n.beginLine; ++curLine )
-            out.println();
-      }
-
-      for ( ; curColumn < n.beginColumn; ++curColumn )
-         out.print(" ");
-
-      printToken(n.tokenImage);
-   }
-
-   private void printToken(String s) {
-      for ( int i = 0; i < s.length(); ++i ) { 
-         if ( s.charAt(i) == '\n' ) {
-            ++curLine;
-            curColumn = 1;
-         }
-         else
-            curColumn++;
-
-         out.print(s.charAt(i));
-      }
-
-      out.flush();
-   }
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/TreeFormatter.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/TreeFormatter.java
deleted file mode 100644 (file)
index 7cb5ae0..0000000
+++ /dev/null
@@ -1,980 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-package org.gnunet.seaspider.parser.visitors;
-
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * A skeleton output formatter for your language grammar.  Using the
- * add() method along with force(), indent(), and outdent(), you can
- * easily specify how this visitor will format the given syntax tree.
- * See the JTB documentation for more details.
- *
- * Pass your syntax tree to this visitor, and then to the TreeDumper
- * visitor in order to "pretty print" your tree.
- */
-public class TreeFormatter extends DepthFirstVisitor {
-   private Vector<FormatCommand> cmdQueue = new Vector<FormatCommand>();
-   private boolean lineWrap;
-   private int wrapWidth;
-   private int indentAmt;
-   private int curLine = 1;
-   private int curColumn = 1;
-   private int curIndent = 0;
-
-   /**
-    * The default constructor assumes an indentation amount of 3 spaces
-    * and no line-wrap.  You may alternately use the other constructor to
-    * specify your own indentation amount and line width.
-    */
-   public TreeFormatter() { this(3, 0); }
-
-   /**
-    * This constructor accepts an indent amount and a line width which is
-    * used to wrap long lines.  If a token's beginColumn value is greater
-    * than the specified wrapWidth, it will be moved to the next line and
-    * indented one extra level.  To turn off line-wrapping, specify a
-    * wrapWidth of 0.
-    *
-    * @param   indentAmt   Amount of spaces per indentation level.
-    * @param   wrapWidth   Wrap lines longer than wrapWidth.  0 for no wrap.
-    */
-   public TreeFormatter(int indentAmt, int wrapWidth) {
-      this.indentAmt = indentAmt;
-      this.wrapWidth = wrapWidth;
-
-      if ( wrapWidth > 0 )
-         lineWrap = true;
-      else
-         lineWrap = false;
-   }
-
-   /**
-    * Accepts a NodeListInterface object and performs an optional format
-    * command between each node in the list (but not after the last node).
-    */
-   protected void processList(NodeListInterface n) {
-      processList(n, null);
-   }
-
-   protected void processList(NodeListInterface n, FormatCommand cmd) {
-      for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
-         e.nextElement().accept(this);
-         if ( cmd != null && e.hasMoreElements() )
-            cmdQueue.addElement(cmd);
-      }
-   }
-
-   /**
-    * A Force command inserts a line break and indents the next line to
-    * the current indentation level.  Use "add(force());".
-    */
-   protected FormatCommand force() { return force(1); }
-   protected FormatCommand force(int i) {
-      return new FormatCommand(FormatCommand.FORCE, i);
-   }
-
-   /**
-    * An Indent command increases the indentation level by one (or a
-    * user-specified amount).  Use "add(indent());".
-    */
-   protected FormatCommand indent() { return indent(1); }
-   protected FormatCommand indent(int i) {
-      return new FormatCommand(FormatCommand.INDENT, i);
-   }
-
-   /**
-    * An Outdent command is the reverse of the Indent command: it reduces
-    * the indentation level.  Use "add(outdent());".
-    */
-   protected FormatCommand outdent() { return outdent(1); }
-   protected FormatCommand outdent(int i) {
-      return new FormatCommand(FormatCommand.OUTDENT, i);
-   }
-
-   /**
-    * A Space command simply adds one or a user-specified number of
-    * spaces between tokens.  Use "add(space());".
-    */
-   protected FormatCommand space() { return space(1); }
-   protected FormatCommand space(int i) {
-      return new FormatCommand(FormatCommand.SPACE, i);
-   }
-
-   /**
-    * Use this method to add FormatCommands to the command queue to be
-    * executed when the next token in the tree is visited.
-    */
-   protected void add(FormatCommand cmd) {
-      cmdQueue.addElement(cmd);
-   }
-
-   /**
-    * Executes the commands waiting in the command queue, then inserts the
-    * proper location information into the current NodeToken.
-    *
-    * If there are any special tokens preceding this token, they will be
-    * given the current location information.  The token will follow on
-    * the next line, at the proper indentation level.  If this is not the
-    * behavior you want from special tokens, feel free to modify this
-    * method.
-    */
-   public void visit(NodeToken n) {
-      for ( Enumeration<FormatCommand> e = cmdQueue.elements(); e.hasMoreElements(); ) {
-         FormatCommand cmd = e.nextElement();
-         switch ( cmd.getCommand() ) {
-         case FormatCommand.FORCE :
-            curLine += cmd.getNumCommands();
-            curColumn = curIndent + 1;
-            break;
-         case FormatCommand.INDENT :
-            curIndent += indentAmt * cmd.getNumCommands();
-            break;
-         case FormatCommand.OUTDENT :
-            if ( curIndent >= indentAmt )
-               curIndent -= indentAmt * cmd.getNumCommands();
-            break;
-         case FormatCommand.SPACE :
-            curColumn += cmd.getNumCommands();
-            break;
-         default :
-            throw new TreeFormatterException(
-               "Invalid value in command queue.");
-         }
-      }
-
-      cmdQueue.removeAllElements();
-
-      //
-      // Handle all special tokens preceding this NodeToken
-      //
-      if ( n.numSpecials() > 0 )
-         for ( Enumeration<NodeToken> e = n.specialTokens.elements();
-               e.hasMoreElements(); ) {
-            NodeToken special = e.nextElement();
-
-            //
-            // -Place the token.
-            // -Move cursor to next line after the special token.
-            // -Don't update curColumn--want to keep current indent level.
-            //
-            placeToken(special, curLine, curColumn);
-            curLine = special.endLine + 1;
-         }
-
-      placeToken(n, curLine, curColumn);
-      curLine = n.endLine;
-      curColumn = n.endColumn;
-   }
-
-   /**
-    * Inserts token location (beginLine, beginColumn, endLine, endColumn)
-    * information into the NodeToken.  Takes into account line-wrap.
-    * Does not update curLine and curColumn.
-    */
-   private void placeToken(NodeToken n, int line, int column) {
-      int length = n.tokenImage.length();
-
-      //
-      // Find beginning of token.  Only line-wrap for single-line tokens
-      //
-      if ( !lineWrap || n.tokenImage.indexOf('\n') != -1 ||
-           column + length <= wrapWidth )
-         n.beginColumn = column;
-      else {
-         ++line;
-         column = curIndent + indentAmt + 1;
-         n.beginColumn = column;
-      }
-
-      n.beginLine = line;
-
-      //
-      // Find end of token; don't count \n if it's the last character
-      //
-      for ( int i = 0; i < length; ++i ) {
-         if ( n.tokenImage.charAt(i) == '\n' && i < length - 1 ) {
-            ++line;
-            column = 1;
-         }
-         else
-            ++column;
-      }
-
-      n.endLine = line;
-      n.endColumn = column;
-   }
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public void visit(TranslationUnit n) {
-      processList(n.f0);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public void visit(ExternalDeclaration n) {
-      if ( n.f0.present() ) {
-         processList(n.f0);
-      }
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public void visit(FunctionDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      if ( n.f3.present() ) {
-         n.f3.accept(this);
-      }
-      n.f4.accept(this);
-      n.f5.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public void visit(StorageClassSpecifier n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public void visit(TypeDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(DataType n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public void visit(FunctionType n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-      n.f4.accept(this);
-      n.f5.accept(this);
-      if ( n.f6.present() ) {
-         n.f6.accept(this);
-      }
-      n.f7.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public void visit(ParameterList n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-      if ( n.f2.present() ) {
-         n.f2.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(ParameterDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      if ( n.f2.present() ) {
-         n.f2.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public void visit(VariableDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      n.f2.accept(this);
-      n.f3.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public void visit(LocalVariableDeclaration n) {
-      if ( n.f0.present() ) {
-         n.f0.accept(this);
-      }
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public void visit(VariableClassSpecifier n) {
-      if ( n.f0.present() ) {
-         processList(n.f0);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(TypeSpecifier n) {
-      if ( n.f0.present() ) {
-         n.f0.accept(this);
-      }
-      n.f1.accept(this);
-      if ( n.f2.present() ) {
-         n.f2.accept(this);
-      }
-      if ( n.f3.present() ) {
-         n.f3.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(NoIdentifierTypeSpecifier n) {
-      if ( n.f0.present() ) {
-         n.f0.accept(this);
-      }
-      n.f1.accept(this);
-      if ( n.f2.present() ) {
-         n.f2.accept(this);
-      }
-      if ( n.f3.present() ) {
-         n.f3.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(StructOrUnionSpecifier n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public void visit(StructOrUnion n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public void visit(StructDeclarationList n) {
-      processList(n.f0);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public void visit(InitDeclaratorList n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public void visit(InitDeclarator n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-      if ( n.f2.present() ) {
-         n.f2.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public void visit(StructDeclaration n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-      if ( n.f2.present() ) {
-         n.f2.accept(this);
-      }
-      if ( n.f3.present() ) {
-         n.f3.accept(this);
-      }
-      n.f4.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public void visit(EnumSpecifier n) {
-      n.f0.accept(this);
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public void visit(EnumeratorList n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public void visit(Enumerator n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public void visit(Pointer n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-      if ( n.f2.present() ) {
-         n.f2.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public void visit(IdentifierList n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public void visit(Initializer n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public void visit(InitializerList n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public void visit(Array n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public void visit(Statement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public void visit(LabeledStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public void visit(ExpressionStatement n) {
-      if ( n.f0.present() ) {
-         n.f0.accept(this);
-      }
-      n.f1.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public void visit(CompoundStatement n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-      n.f2.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public void visit(SelectionStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public void visit(IterationStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public void visit(JumpStatement n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public void visit(Expression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public void visit(AssignmentOperator n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public void visit(ConditionalExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(ConstantExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalORExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalANDExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(InclusiveORExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(ExclusiveORExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public void visit(ANDExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public void visit(EqualityExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public void visit(RelationalExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public void visit(ShiftExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public void visit(AdditiveExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public void visit(MultiplicativeExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         n.f1.accept(this);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public void visit(CastExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public void visit(UnaryExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public void visit(UnaryOperator n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public void visit(PostfixExpression n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public void visit(PrimaryExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public void visit(ArgumentExpressionList n) {
-      n.f0.accept(this);
-      if ( n.f1.present() ) {
-         processList(n.f1);
-      }
-   }
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentOrTypeExpression n) {
-      n.f0.accept(this);
-   }
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public void visit(Constant n) {
-      n.f0.accept(this);
-   }
-
-}
-
-class FormatCommand {
-   public static final int FORCE = 0;
-   public static final int INDENT = 1;
-   public static final int OUTDENT = 2;
-   public static final int SPACE = 3;
-
-   private int command;
-   private int numCommands;
-
-   FormatCommand(int command, int numCommands) {
-      this.command = command;
-      this.numCommands = numCommands;
-   }
-
-   public int getCommand()             { return command; }
-   public int getNumCommands()         { return numCommands; }
-   public void setCommand(int i)       { command = i; }
-   public void setNumCommands(int i)   { numCommands = i; }
-}
-
-class TreeFormatterException extends RuntimeException {
-   TreeFormatterException()         { super(); }
-   TreeFormatterException(String s) { super(s); }
-}
diff --git a/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/Visitor.java b/src/monkey/seaspider/org/gnunet/seaspider/parser/visitors/Visitor.java
deleted file mode 100644 (file)
index 456698a..0000000
+++ /dev/null
@@ -1,508 +0,0 @@
-//
-// Generated by JTB 1.3.2
-//
-
-package org.gnunet.seaspider.parser.visitors;
-import org.gnunet.seaspider.parser.nodes.*;
-
-import java.util.*;
-
-/**
- * All void visitors must implement this interface.
- */
-
-public interface Visitor {
-
-   //
-   // void Auto class visitors
-   //
-
-   public void visit(NodeList n);
-   public void visit(NodeListOptional n);
-   public void visit(NodeOptional n);
-   public void visit(NodeSequence n);
-   public void visit(NodeToken n);
-
-   //
-   // User-generated visitor methods below
-   //
-
-   /**
-    * <PRE>
-    * f0 -> ( ExternalDeclaration() )+
-    * </PRE>
-    */
-   public void visit(TranslationUnit n);
-
-   /**
-    * <PRE>
-    * f0 -> ( StorageClassSpecifier() )*
-    * f1 -> ( FunctionDeclaration() | StructOrUnionSpecifier() | VariableDeclaration() | TypeDeclaration() )
-    * </PRE>
-    */
-   public void visit(ExternalDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> "("
-    * f3 -> [ ParameterList() ]
-    * f4 -> ")"
-    * f5 -> ( ";" | CompoundStatement() )
-    * </PRE>
-    */
-   public void visit(FunctionDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STATIC&gt; | &lt;EXTERN&gt; )
-    * </PRE>
-    */
-   public void visit(StorageClassSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;TYPEDEF&gt;
-    * f1 -> ( DataType() | FunctionType() )
-    * f2 -> ";"
-    * </PRE>
-    */
-   public void visit(TypeDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnionSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(DataType n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> "("
-    * f2 -> "*"
-    * f3 -> &lt;IDENTIFIER&gt;
-    * f4 -> ")"
-    * f5 -> "("
-    * f6 -> [ ParameterList() ]
-    * f7 -> ")"
-    * </PRE>
-    */
-   public void visit(FunctionType n);
-
-   /**
-    * <PRE>
-    * f0 -> ParameterDeclaration()
-    * f1 -> ( "," ParameterDeclaration() )*
-    * f2 -> [ "," "..." ]
-    * </PRE>
-    */
-   public void visit(ParameterList n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(ParameterDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> VariableClassSpecifier()
-    * f1 -> TypeSpecifier()
-    * f2 -> InitDeclaratorList()
-    * f3 -> ";"
-    * </PRE>
-    */
-   public void visit(VariableDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;STATIC&gt; ]
-    * f1 -> VariableDeclaration()
-    * </PRE>
-    */
-   public void visit(LocalVariableDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;AUTO&gt; | &lt;REGISTER&gt; )*
-    * </PRE>
-    */
-   public void visit(VariableClassSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() | &lt;IDENTIFIER&gt; )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(TypeSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> [ &lt;CONST&gt; ]
-    * f1 -> ( &lt;VOID&gt; | &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] | &lt;FLOAT&gt; | &lt;DOUBLE&gt; | ( &lt;SIGNED&gt; | &lt;UNSIGNED&gt; ) [ &lt;CHAR&gt; | &lt;SHORT&gt; [ &lt;INT&gt; ] | &lt;INT&gt; | &lt;LONG&gt; [ &lt;LONG&gt; ] ] | StructOrUnionSpecifier() | EnumSpecifier() )
-    * f2 -> [ Pointer() ]
-    * f3 -> [ Array() ]
-    * </PRE>
-    */
-   public void visit(NoIdentifierTypeSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> StructOrUnion() [ &lt;IDENTIFIER&gt; ] "{" StructDeclarationList() "}"
-    *       | StructOrUnion() &lt;IDENTIFIER&gt;
-    * </PRE>
-    */
-   public void visit(StructOrUnionSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;STRUCT&gt; | &lt;UNION&gt; )
-    * </PRE>
-    */
-   public void visit(StructOrUnion n);
-
-   /**
-    * <PRE>
-    * f0 -> ( StructDeclaration() )+
-    * </PRE>
-    */
-   public void visit(StructDeclarationList n);
-
-   /**
-    * <PRE>
-    * f0 -> InitDeclarator()
-    * f1 -> ( "," InitDeclarator() )*
-    * </PRE>
-    */
-   public void visit(InitDeclaratorList n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ Array() ]
-    * f2 -> [ "=" Initializer() ]
-    * </PRE>
-    */
-   public void visit(InitDeclarator n);
-
-   /**
-    * <PRE>
-    * f0 -> TypeSpecifier()
-    * f1 -> &lt;IDENTIFIER&gt;
-    * f2 -> [ Array() | ":" ConstantExpression() ]
-    * f3 -> [ &lt;IDENTIFIER&gt; ]
-    * f4 -> ";"
-    * </PRE>
-    */
-   public void visit(StructDeclaration n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;ENUM&gt;
-    * f1 -> ( [ &lt;IDENTIFIER&gt; ] "{" EnumeratorList() "}" | &lt;IDENTIFIER&gt; )
-    * </PRE>
-    */
-   public void visit(EnumSpecifier n);
-
-   /**
-    * <PRE>
-    * f0 -> Enumerator()
-    * f1 -> ( "," Enumerator() )*
-    * </PRE>
-    */
-   public void visit(EnumeratorList n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> [ "=" ConstantExpression() ]
-    * </PRE>
-    */
-   public void visit(Enumerator n);
-
-   /**
-    * <PRE>
-    * f0 -> "*"
-    * f1 -> [ &lt;CONST&gt; ]
-    * f2 -> [ Pointer() ]
-    * </PRE>
-    */
-   public void visit(Pointer n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    * f1 -> ( "," &lt;IDENTIFIER&gt; )*
-    * </PRE>
-    */
-   public void visit(IdentifierList n);
-
-   /**
-    * <PRE>
-    * f0 -> ( AssignmentExpression() | "{" InitializerList() [ "," ] "}" )
-    * </PRE>
-    */
-   public void visit(Initializer n);
-
-   /**
-    * <PRE>
-    * f0 -> Initializer()
-    * f1 -> ( "," Initializer() )*
-    * </PRE>
-    */
-   public void visit(InitializerList n);
-
-   /**
-    * <PRE>
-    * f0 -> "["
-    * f1 -> [ ConstantExpression() ]
-    * f2 -> "]"
-    * </PRE>
-    */
-   public void visit(Array n);
-
-   /**
-    * <PRE>
-    * f0 -> ( LabeledStatement() | ExpressionStatement() | CompoundStatement() | SelectionStatement() | IterationStatement() | JumpStatement() )
-    * </PRE>
-    */
-   public void visit(Statement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IDENTIFIER&gt; ":" Statement() | &lt;CASE&gt; ConstantExpression() ":" Statement() | &lt;DFLT&gt; ":" Statement() )
-    * </PRE>
-    */
-   public void visit(LabeledStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> [ Expression() ]
-    * f1 -> ";"
-    * </PRE>
-    */
-   public void visit(ExpressionStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> "{"
-    * f1 -> ( LocalVariableDeclaration() | Statement() )*
-    * f2 -> "}"
-    * </PRE>
-    */
-   public void visit(CompoundStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;IF&gt; "(" Expression() ")" Statement() [ &lt;ELSE&gt; Statement() ] | &lt;SWITCH&gt; "(" Expression() ")" Statement() )
-    * </PRE>
-    */
-   public void visit(SelectionStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;WHILE&gt; "(" Expression() ")" Statement() | &lt;DO&gt; Statement() &lt;WHILE&gt; "(" Expression() ")" ";" | &lt;FOR&gt; "(" [ Expression() ] ";" [ Expression() ] ";" [ Expression() ] ")" Statement() )
-    * </PRE>
-    */
-   public void visit(IterationStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> ( &lt;GOTO&gt; &lt;IDENTIFIER&gt; ";" | &lt;CONTINUE&gt; ";" | &lt;BREAK&gt; ";" | &lt;RETURN&gt; [ Expression() ] ";" )
-    * </PRE>
-    */
-   public void visit(JumpStatement n);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentExpression()
-    * f1 -> ( "," AssignmentExpression() )*
-    * </PRE>
-    */
-   public void visit(Expression n);
-
-   /**
-    * <PRE>
-    * f0 -> UnaryExpression() AssignmentOperator() AssignmentExpression()
-    *       | ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "&lt;&lt;=" | "&gt;&gt;=" | "&=" | "^=" | "|=" )
-    * </PRE>
-    */
-   public void visit(AssignmentOperator n);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalORExpression()
-    * f1 -> [ "?" Expression() ":" ConditionalExpression() ]
-    * </PRE>
-    */
-   public void visit(ConditionalExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ConditionalExpression()
-    * </PRE>
-    */
-   public void visit(ConstantExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> LogicalANDExpression()
-    * f1 -> [ "||" LogicalORExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalORExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> InclusiveORExpression()
-    * f1 -> [ "&&" LogicalANDExpression() ]
-    * </PRE>
-    */
-   public void visit(LogicalANDExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ExclusiveORExpression()
-    * f1 -> [ "|" InclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(InclusiveORExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ANDExpression()
-    * f1 -> [ "^" ExclusiveORExpression() ]
-    * </PRE>
-    */
-   public void visit(ExclusiveORExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> EqualityExpression()
-    * f1 -> [ "&" ANDExpression() ]
-    * </PRE>
-    */
-   public void visit(ANDExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> RelationalExpression()
-    * f1 -> [ ( "==" | "!=" ) EqualityExpression() ]
-    * </PRE>
-    */
-   public void visit(EqualityExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ShiftExpression()
-    * f1 -> [ ( "&lt;" | "&gt;" | "&lt;=" | "&gt;=" ) RelationalExpression() ]
-    * </PRE>
-    */
-   public void visit(RelationalExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> AdditiveExpression()
-    * f1 -> [ ( "&lt;&lt;" | "&gt;&gt;" ) ShiftExpression() ]
-    * </PRE>
-    */
-   public void visit(ShiftExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> MultiplicativeExpression()
-    * f1 -> [ ( "+" | "-" ) AdditiveExpression() ]
-    * </PRE>
-    */
-   public void visit(AdditiveExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> CastExpression()
-    * f1 -> [ ( "*" | "/" | "%" ) MultiplicativeExpression() ]
-    * </PRE>
-    */
-   public void visit(MultiplicativeExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( "(" TypeSpecifier() ")" CastExpression() | UnaryExpression() )
-    * </PRE>
-    */
-   public void visit(CastExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( PostfixExpression() | "++" UnaryExpression() | "--" UnaryExpression() | UnaryOperator() CastExpression() | &lt;SIZEOF&gt; ( UnaryExpression() | "(" TypeSpecifier() ")" ) )
-    * </PRE>
-    */
-   public void visit(UnaryExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> ( "&" | "*" | "+" | "-" | "~" | "!" )
-    * </PRE>
-    */
-   public void visit(UnaryOperator n);
-
-   /**
-    * <PRE>
-    * f0 -> PrimaryExpression()
-    * f1 -> ( "[" Expression() "]" | "(" [ ArgumentExpressionList() ] ")" | "." &lt;IDENTIFIER&gt; | "-&gt;" &lt;IDENTIFIER&gt; | "++" | "--" )*
-    * </PRE>
-    */
-   public void visit(PostfixExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;IDENTIFIER&gt;
-    *       | Constant()
-    *       | "(" Expression() ")"
-    * </PRE>
-    */
-   public void visit(PrimaryExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> AssignmentOrTypeExpression()
-    * f1 -> ( "," AssignmentOrTypeExpression() )*
-    * </PRE>
-    */
-   public void visit(ArgumentExpressionList n);
-
-   /**
-    * <PRE>
-    * f0 -> NoIdentifierTypeSpecifier()
-    *       | AssignmentExpression()
-    * </PRE>
-    */
-   public void visit(AssignmentOrTypeExpression n);
-
-   /**
-    * <PRE>
-    * f0 -> &lt;INTEGER_LITERAL&gt;
-    *       | &lt;FLOATING_POINT_LITERAL&gt;
-    *       | &lt;CHARACTER_LITERAL&gt;
-    *       | &lt;STRING_LITERAL&gt;
-    * </PRE>
-    */
-   public void visit(Constant n);
-
-}
-