home *** CD-ROM | disk | FTP | other *** search
- <?xml version="1.0" encoding="US-ASCII"?>
- <!--
- Copyright 1999-2004 The Apache Software Foundation
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-
- <grammar xmlns="http://chaperon.sourceforge.net/schema/grammar/1.0">
- <!--This file was generated! Don't edit!-->
- <priority>
- <terminal symbol="DOPEN"/>
- <terminal symbol="DCLOSE"/>
- <terminal symbol="COPEN"/>
- <terminal symbol="CCLOSE"/>
- <terminal symbol="BOPEN"/>
- <terminal symbol="BCLOSE"/>
- <terminal symbol="SEMICOLON"/>
- <terminal symbol="COMMA"/>
- <terminal symbol="DOT"/>
- <terminal symbol="OP_EQ"/>
- <terminal symbol="OP_LE"/>
- <terminal symbol="OP_GE"/>
- <terminal symbol="OP_NE"/>
- <terminal symbol="OP_LOR"/>
- <terminal symbol="OP_LAND"/>
- <terminal symbol="OP_INC"/>
- <terminal symbol="OP_DEC"/>
- <terminal symbol="OP_SHR"/>
- <terminal symbol="OP_SHL"/>
- <terminal symbol="OP_SHRR"/>
- <terminal symbol="ASS_OP"/>
- <terminal symbol="EQ"/>
- <terminal symbol="GT"/>
- <terminal symbol="LT"/>
- <terminal symbol="NOT"/>
- <terminal symbol="TILDE"/>
- <terminal symbol="QM"/>
- <terminal symbol="COLON"/>
- <terminal symbol="PLUS"/>
- <terminal symbol="MINUS"/>
- <terminal symbol="MULT"/>
- <terminal symbol="DIV"/>
- <terminal symbol="AND"/>
- <terminal symbol="OR"/>
- <terminal symbol="XOR"/>
- <terminal symbol="MOD"/>
- <terminal symbol="BOOLLIT"/>
- <terminal symbol="ABSTRACT"/>
- <terminal symbol="DO"/>
- <terminal symbol="IMPLEMENTS"/>
- <terminal symbol="PACKAGE"/>
- <terminal symbol="THROW"/>
- <terminal symbol="BOOLEAN"/>
- <terminal symbol="DOUBLE"/>
- <terminal symbol="IMPORT"/>
- <terminal symbol="PRIVATE"/>
- <terminal symbol="THROWS"/>
- <terminal symbol="BREAK"/>
- <terminal symbol="ELSE"/>
- <terminal symbol="INNER"/>
- <terminal symbol="PROTECTED"/>
- <terminal symbol="TRANSIENT"/>
- <terminal symbol="BYTE"/>
- <terminal symbol="EXTENDS"/>
- <terminal symbol="INSTANCEOF"/>
- <terminal symbol="PUBLIC"/>
- <terminal symbol="TRY"/>
- <terminal symbol="CASE"/>
- <terminal symbol="FINAL"/>
- <terminal symbol="INT"/>
- <terminal symbol="REST"/>
- <terminal symbol="VAR"/>
- <terminal symbol="CAST"/>
- <terminal symbol="FINALLY"/>
- <terminal symbol="INTERFACE"/>
- <terminal symbol="RETURN"/>
- <terminal symbol="VOID"/>
- <terminal symbol="CATCH"/>
- <terminal symbol="FLOAT"/>
- <terminal symbol="LONG"/>
- <terminal symbol="SHORT"/>
- <terminal symbol="VOLATILE"/>
- <terminal symbol="CHAR"/>
- <terminal symbol="FOR"/>
- <terminal symbol="NATIVE"/>
- <terminal symbol="STATIC"/>
- <terminal symbol="WHILE"/>
- <terminal symbol="CLASS"/>
- <terminal symbol="FUTURE"/>
- <terminal symbol="NEW"/>
- <terminal symbol="SUPER"/>
- <terminal symbol="CONST"/>
- <terminal symbol="GENERIC"/>
- <terminal symbol="NULL"/>
- <terminal symbol="SWITCH"/>
- <terminal symbol="CONTINUE"/>
- <terminal symbol="GOTO"/>
- <terminal symbol="OPERATOR"/>
- <terminal symbol="SYNCHRONIZED"/>
- <terminal symbol="DEFAULT"/>
- <terminal symbol="IF"/>
- <terminal symbol="OUTER"/>
- <terminal symbol="THIS"/>
- <terminal symbol="LITERAL"/>
- <terminal symbol="IDENTIFIER"/>
- <terminal symbol="OP_DIM"/>
- <terminal symbol="SPACES"/>
- <terminal symbol="TAB"/>
- <terminal symbol="EOL"/>
- <terminal symbol="JAVADOC"/>
- <terminal symbol="MULTILINECOMMENT"/>
- <terminal symbol="SINGLELINECOMMENT"/>
- </priority>
- <production symbol="TypeSpecifier">
- <nonterminal symbol="TypeName"/>
- </production>
- <production symbol="TypeSpecifier">
- <nonterminal symbol="TypeName"/>
- <nonterminal symbol="Dims"/>
- </production>
- <production symbol="TypeName">
- <nonterminal symbol="PrimitiveType"/>
- </production>
- <production symbol="TypeName">
- <nonterminal symbol="QualifiedName"/>
- </production>
- <production symbol="ClassNameList">
- <nonterminal symbol="QualifiedName"/>
- </production>
- <production symbol="ClassNameList">
- <nonterminal symbol="ClassNameList"/>
- <terminal symbol="COMMA"/>
- <nonterminal symbol="QualifiedName"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="BOOLEAN"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="CHAR"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="BYTE"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="SHORT"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="INT"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="LONG"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="FLOAT"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="DOUBLE"/>
- </production>
- <production symbol="PrimitiveType">
- <terminal symbol="VOID"/>
- </production>
- <production symbol="SemiColons">
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="SemiColons">
- <nonterminal symbol="SemiColons"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="CompilationUnit">
- <nonterminal symbol="ProgramFile"/>
- </production>
- <production symbol="ProgramFile">
- <nonterminal symbol="PackageStatement"/>
- <nonterminal symbol="ImportStatements"/>
- <nonterminal symbol="TypeDeclarations"/>
- </production>
- <production symbol="ProgramFile">
- <nonterminal symbol="PackageStatement"/>
- <nonterminal symbol="ImportStatements"/>
- </production>
- <production symbol="ProgramFile">
- <nonterminal symbol="PackageStatement"/>
- <nonterminal symbol="TypeDeclarations"/>
- </production>
- <production symbol="ProgramFile">
- <nonterminal symbol="ImportStatements"/>
- <nonterminal symbol="TypeDeclarations"/>
- </production>
- <production symbol="ProgramFile">
- <nonterminal symbol="PackageStatement"/>
- </production>
- <production symbol="ProgramFile">
- <nonterminal symbol="ImportStatements"/>
- </production>
- <production symbol="ProgramFile">
- <nonterminal symbol="TypeDeclarations"/>
- </production>
- <production symbol="PackageStatement">
- <terminal symbol="PACKAGE"/>
- <nonterminal symbol="QualifiedName"/>
- <nonterminal symbol="SemiColons"/>
- </production>
- <production symbol="TypeDeclarations">
- <nonterminal symbol="TypeDeclarationOptSemi"/>
- </production>
- <production symbol="TypeDeclarations">
- <nonterminal symbol="TypeDeclarations"/>
- <nonterminal symbol="TypeDeclarationOptSemi"/>
- </production>
- <production symbol="TypeDeclarationOptSemi">
- <nonterminal symbol="TypeDeclaration"/>
- </production>
- <production symbol="TypeDeclarationOptSemi">
- <nonterminal symbol="TypeDeclaration"/>
- <nonterminal symbol="SemiColons"/>
- </production>
- <production symbol="ImportStatements">
- <nonterminal symbol="ImportStatement"/>
- </production>
- <production symbol="ImportStatements">
- <nonterminal symbol="ImportStatements"/>
- <nonterminal symbol="ImportStatement"/>
- </production>
- <production symbol="ImportStatement">
- <terminal symbol="IMPORT"/>
- <nonterminal symbol="QualifiedName"/>
- <nonterminal symbol="SemiColons"/>
- </production>
- <production symbol="ImportStatement">
- <terminal symbol="IMPORT"/>
- <nonterminal symbol="QualifiedName"/>
- <terminal symbol="DOT"/>
- <terminal symbol="MULT"/>
- <nonterminal symbol="SemiColons"/>
- </production>
- <production symbol="QualifiedName">
- <terminal symbol="IDENTIFIER"/>
- </production>
- <production symbol="QualifiedName">
- <nonterminal symbol="QualifiedName"/>
- <terminal symbol="DOT"/>
- <terminal symbol="IDENTIFIER"/>
- </production>
- <production symbol="TypeDeclaration">
- <nonterminal symbol="ClassHeader"/>
- <terminal symbol="COPEN"/>
- <nonterminal symbol="FieldDeclarations"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="TypeDeclaration">
- <nonterminal symbol="ClassHeader"/>
- <terminal symbol="COPEN"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="TypeDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="ClassHeader"/>
- <terminal symbol="COPEN"/>
- <nonterminal symbol="FieldDeclarations"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="TypeDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="ClassHeader"/>
- <terminal symbol="COPEN"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- <nonterminal symbol="Extends"/>
- <nonterminal symbol="Interfaces"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- <nonterminal symbol="Extends"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- <nonterminal symbol="Interfaces"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- <nonterminal symbol="Extends"/>
- <nonterminal symbol="Interfaces"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- <nonterminal symbol="Extends"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- <nonterminal symbol="Interfaces"/>
- </production>
- <production symbol="ClassHeader">
- <nonterminal symbol="ClassWord"/>
- <terminal symbol="IDENTIFIER"/>
- </production>
- <production symbol="Modifiers">
- <nonterminal symbol="Modifier"/>
- </production>
- <production symbol="Modifiers">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="Modifier"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="ABSTRACT"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="FINAL"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="PUBLIC"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="PROTECTED"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="PRIVATE"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="STATIC"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="TRANSIENT"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="VOLATILE"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="NATIVE"/>
- </production>
- <production symbol="Modifier">
- <terminal symbol="SYNCHRONIZED"/>
- </production>
- <production symbol="ClassWord">
- <terminal symbol="CLASS"/>
- </production>
- <production symbol="ClassWord">
- <terminal symbol="INTERFACE"/>
- </production>
- <production symbol="Interfaces">
- <terminal symbol="IMPLEMENTS"/>
- <nonterminal symbol="ClassNameList"/>
- </production>
- <production symbol="FieldDeclarations">
- <nonterminal symbol="FieldDeclarationOptSemi"/>
- </production>
- <production symbol="FieldDeclarations">
- <nonterminal symbol="FieldDeclarations"/>
- <nonterminal symbol="FieldDeclarationOptSemi"/>
- </production>
- <production symbol="FieldDeclarationOptSemi">
- <nonterminal symbol="FieldDeclaration"/>
- </production>
- <production symbol="FieldDeclarationOptSemi">
- <nonterminal symbol="FieldDeclaration"/>
- <nonterminal symbol="SemiColons"/>
- </production>
- <production symbol="FieldDeclaration">
- <nonterminal symbol="FieldVariableDeclaration"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="FieldDeclaration">
- <nonterminal symbol="MethodDeclaration"/>
- </production>
- <production symbol="FieldDeclaration">
- <nonterminal symbol="ConstructorDeclaration"/>
- </production>
- <production symbol="FieldDeclaration">
- <nonterminal symbol="StaticInitializer"/>
- </production>
- <production symbol="FieldDeclaration">
- <nonterminal symbol="NonStaticInitializer"/>
- </production>
- <production symbol="FieldDeclaration">
- <nonterminal symbol="TypeDeclaration"/>
- </production>
- <production symbol="FieldVariableDeclaration">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="VariableDeclarators"/>
- </production>
- <production symbol="FieldVariableDeclaration">
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="VariableDeclarators"/>
- </production>
- <production symbol="FieldVariableDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="VariableDeclarators"/>
- </production>
- <production symbol="FieldVariableDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="VariableDeclarators"/>
- </production>
- <production symbol="VariableDeclarators">
- <nonterminal symbol="VariableDeclarator"/>
- </production>
- <production symbol="VariableDeclarators">
- <nonterminal symbol="VariableDeclarators"/>
- <terminal symbol="COMMA"/>
- <nonterminal symbol="VariableDeclarator"/>
- </production>
- <production symbol="VariableDeclarator">
- <nonterminal symbol="DeclaratorName"/>
- </production>
- <production symbol="VariableDeclarator">
- <nonterminal symbol="DeclaratorName"/>
- <terminal symbol="EQ"/>
- <nonterminal symbol="VariableInitializer"/>
- </production>
- <production symbol="VariableInitializer">
- <nonterminal symbol="Expression"/>
- </production>
- <production symbol="VariableInitializer">
- <terminal symbol="COPEN"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="VariableInitializer">
- <terminal symbol="COPEN"/>
- <nonterminal symbol="ArrayInitializers"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="ArrayInitializers">
- <nonterminal symbol="VariableInitializer"/>
- </production>
- <production symbol="ArrayInitializers">
- <nonterminal symbol="ArrayInitializers"/>
- <terminal symbol="COMMA"/>
- <nonterminal symbol="VariableInitializer"/>
- </production>
- <production symbol="ArrayInitializers">
- <nonterminal symbol="ArrayInitializers"/>
- <terminal symbol="COMMA"/>
- </production>
- <production symbol="MethodDeclaration">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclaration">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclaration">
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclaration">
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="MethodDeclarator"/>
- <nonterminal symbol="MethodBody"/>
- </production>
- <production symbol="MethodDeclarator">
- <nonterminal symbol="DeclaratorName"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="ParameterList"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="MethodDeclarator">
- <nonterminal symbol="DeclaratorName"/>
- <terminal symbol="DOPEN"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="MethodDeclarator">
- <nonterminal symbol="MethodDeclarator"/>
- <terminal symbol="OP_DIM"/>
- </production>
- <production symbol="ParameterList">
- <nonterminal symbol="Parameter"/>
- </production>
- <production symbol="ParameterList">
- <nonterminal symbol="ParameterList"/>
- <terminal symbol="COMMA"/>
- <nonterminal symbol="Parameter"/>
- </production>
- <production symbol="Parameter">
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="DeclaratorName"/>
- </production>
- <production symbol="Parameter">
- <terminal symbol="FINAL"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="DeclaratorName"/>
- </production>
- <production symbol="DeclaratorName">
- <terminal symbol="IDENTIFIER"/>
- </production>
- <production symbol="DeclaratorName">
- <nonterminal symbol="DeclaratorName"/>
- <terminal symbol="OP_DIM"/>
- </production>
- <production symbol="Throws">
- <terminal symbol="THROWS"/>
- <nonterminal symbol="ClassNameList"/>
- </production>
- <production symbol="MethodBody">
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="MethodBody">
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="Modifiers"/>
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Throws"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclaration">
- <terminal symbol="JAVADOC"/>
- <nonterminal symbol="ConstructorDeclarator"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="ConstructorDeclarator">
- <terminal symbol="IDENTIFIER"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="ParameterList"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="ConstructorDeclarator">
- <terminal symbol="IDENTIFIER"/>
- <terminal symbol="DOPEN"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="StaticInitializer">
- <terminal symbol="STATIC"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="NonStaticInitializer">
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="Extends">
- <terminal symbol="EXTENDS"/>
- <nonterminal symbol="TypeName"/>
- </production>
- <production symbol="Extends">
- <nonterminal symbol="Extends"/>
- <terminal symbol="COMMA"/>
- <nonterminal symbol="TypeName"/>
- </production>
- <production symbol="Block">
- <terminal symbol="COPEN"/>
- <nonterminal symbol="LocalVariableDeclarationsAndStatements"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="Block">
- <terminal symbol="COPEN"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="LocalVariableDeclarationsAndStatements">
- <nonterminal symbol="LocalVariableDeclarationOrStatement"/>
- </production>
- <production symbol="LocalVariableDeclarationsAndStatements">
- <nonterminal symbol="LocalVariableDeclarationsAndStatements"/>
- <nonterminal symbol="LocalVariableDeclarationOrStatement"/>
- </production>
- <production symbol="LocalVariableDeclarationOrStatement">
- <nonterminal symbol="LocalVariableDeclarationStatement"/>
- </production>
- <production symbol="LocalVariableDeclarationOrStatement">
- <nonterminal symbol="Statement"/>
- </production>
- <production symbol="LocalVariableDeclarationStatement">
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="VariableDeclarators"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="LocalVariableDeclarationStatement">
- <terminal symbol="FINAL"/>
- <nonterminal symbol="TypeSpecifier"/>
- <nonterminal symbol="VariableDeclarators"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="EmptyStatement"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="LabelStatement"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="ExpressionStatement"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="SelectionStatement"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="IterationStatement"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="JumpStatement"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="GuardingStatement"/>
- </production>
- <production symbol="Statement">
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="EmptyStatement">
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="LabelStatement">
- <terminal symbol="IDENTIFIER"/>
- <terminal symbol="COLON"/>
- </production>
- <production symbol="LabelStatement">
- <terminal symbol="CASE"/>
- <nonterminal symbol="ConstantExpression"/>
- <terminal symbol="COLON"/>
- </production>
- <production symbol="LabelStatement">
- <terminal symbol="DEFAULT"/>
- <terminal symbol="COLON"/>
- </production>
- <production symbol="ExpressionStatement">
- <nonterminal symbol="Expression"/>
- </production>
- <production symbol="SelectionStatement" precedence="ELSE">
- <terminal symbol="IF"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="Statement"/>
- </production>
- <production symbol="SelectionStatement" precedence="ELSE">
- <terminal symbol="IF"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="Statement"/>
- <terminal symbol="ELSE"/>
- <nonterminal symbol="Statement"/>
- </production>
- <production symbol="SelectionStatement">
- <terminal symbol="SWITCH"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="IterationStatement">
- <terminal symbol="WHILE"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="Statement"/>
- </production>
- <production symbol="IterationStatement">
- <terminal symbol="DO"/>
- <nonterminal symbol="Statement"/>
- <terminal symbol="WHILE"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="IterationStatement">
- <terminal symbol="FOR"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="ForInit"/>
- <nonterminal symbol="ForExpr"/>
- <nonterminal symbol="ForIncr"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="Statement"/>
- </production>
- <production symbol="IterationStatement">
- <terminal symbol="FOR"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="ForInit"/>
- <nonterminal symbol="ForExpr"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="Statement"/>
- </production>
- <production symbol="ForInit">
- <nonterminal symbol="ExpressionStatements"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="ForInit">
- <nonterminal symbol="LocalVariableDeclarationStatement"/>
- </production>
- <production symbol="ForInit">
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="ForExpr">
- <nonterminal symbol="Expression"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="ForExpr">
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="ForIncr">
- <nonterminal symbol="ExpressionStatements"/>
- </production>
- <production symbol="ExpressionStatements">
- <nonterminal symbol="ExpressionStatement"/>
- </production>
- <production symbol="ExpressionStatements">
- <nonterminal symbol="ExpressionStatements"/>
- <terminal symbol="COMMA"/>
- <nonterminal symbol="ExpressionStatement"/>
- </production>
- <production symbol="JumpStatement">
- <terminal symbol="BREAK"/>
- <terminal symbol="IDENTIFIER"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="JumpStatement">
- <terminal symbol="BREAK"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="JumpStatement">
- <terminal symbol="CONTINUE"/>
- <terminal symbol="IDENTIFIER"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="JumpStatement">
- <terminal symbol="CONTINUE"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="JumpStatement">
- <terminal symbol="RETURN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="JumpStatement">
- <terminal symbol="RETURN"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="JumpStatement">
- <terminal symbol="THROW"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="SEMICOLON"/>
- </production>
- <production symbol="GuardingStatement">
- <terminal symbol="SYNCHRONIZED"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="Statement"/>
- </production>
- <production symbol="GuardingStatement">
- <terminal symbol="TRY"/>
- <nonterminal symbol="Block"/>
- <nonterminal symbol="Finally"/>
- </production>
- <production symbol="GuardingStatement">
- <terminal symbol="TRY"/>
- <nonterminal symbol="Block"/>
- <nonterminal symbol="Catches"/>
- </production>
- <production symbol="GuardingStatement">
- <terminal symbol="TRY"/>
- <nonterminal symbol="Block"/>
- <nonterminal symbol="Catches"/>
- <nonterminal symbol="Finally"/>
- </production>
- <production symbol="Catches">
- <nonterminal symbol="Catch"/>
- </production>
- <production symbol="Catches">
- <nonterminal symbol="Catches"/>
- <nonterminal symbol="Catch"/>
- </production>
- <production symbol="Catch">
- <nonterminal symbol="CatchHeader"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="CatchHeader">
- <terminal symbol="CATCH"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="TypeSpecifier"/>
- <terminal symbol="IDENTIFIER"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="CatchHeader">
- <terminal symbol="CATCH"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="TypeSpecifier"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="Finally">
- <terminal symbol="FINALLY"/>
- <nonterminal symbol="Block"/>
- </production>
- <production symbol="PrimaryExpression">
- <nonterminal symbol="QualifiedName"/>
- </production>
- <production symbol="PrimaryExpression">
- <nonterminal symbol="NotJustName"/>
- </production>
- <production symbol="NotJustName">
- <nonterminal symbol="SpecialName"/>
- </production>
- <production symbol="NotJustName">
- <nonterminal symbol="NewAllocationExpression"/>
- </production>
- <production symbol="NotJustName">
- <nonterminal symbol="ComplexPrimary"/>
- </production>
- <production symbol="ComplexPrimary">
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="ComplexPrimary">
- <nonterminal symbol="ComplexPrimaryNoParenthesis"/>
- </production>
- <production symbol="ComplexPrimaryNoParenthesis">
- <terminal symbol="LITERAL"/>
- </production>
- <production symbol="ComplexPrimaryNoParenthesis">
- <terminal symbol="BOOLLIT"/>
- </production>
- <production symbol="ComplexPrimaryNoParenthesis">
- <nonterminal symbol="ArrayAccess"/>
- </production>
- <production symbol="ComplexPrimaryNoParenthesis">
- <nonterminal symbol="FieldAccess"/>
- </production>
- <production symbol="ComplexPrimaryNoParenthesis">
- <nonterminal symbol="MethodCall"/>
- </production>
- <production symbol="ArrayAccess">
- <nonterminal symbol="QualifiedName"/>
- <terminal symbol="BOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="BCLOSE"/>
- </production>
- <production symbol="ArrayAccess">
- <nonterminal symbol="ComplexPrimary"/>
- <terminal symbol="BOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="BCLOSE"/>
- </production>
- <production symbol="FieldAccess">
- <nonterminal symbol="NotJustName"/>
- <terminal symbol="DOT"/>
- <terminal symbol="IDENTIFIER"/>
- </production>
- <production symbol="FieldAccess">
- <nonterminal symbol="RealPostfixExpression"/>
- <terminal symbol="DOT"/>
- <terminal symbol="IDENTIFIER"/>
- </production>
- <production symbol="FieldAccess">
- <nonterminal symbol="QualifiedName"/>
- <terminal symbol="DOT"/>
- <terminal symbol="THIS"/>
- </production>
- <production symbol="FieldAccess">
- <nonterminal symbol="QualifiedName"/>
- <terminal symbol="DOT"/>
- <terminal symbol="CLASS"/>
- </production>
- <production symbol="FieldAccess">
- <nonterminal symbol="PrimitiveType"/>
- <terminal symbol="DOT"/>
- <terminal symbol="CLASS"/>
- </production>
- <production symbol="MethodCall">
- <nonterminal symbol="MethodAccess"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="ArgumentList"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="MethodCall">
- <nonterminal symbol="MethodAccess"/>
- <terminal symbol="DOPEN"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="MethodAccess">
- <nonterminal symbol="ComplexPrimaryNoParenthesis"/>
- </production>
- <production symbol="MethodAccess">
- <nonterminal symbol="SpecialName"/>
- </production>
- <production symbol="MethodAccess">
- <nonterminal symbol="QualifiedName"/>
- </production>
- <production symbol="SpecialName">
- <terminal symbol="THIS"/>
- </production>
- <production symbol="SpecialName">
- <terminal symbol="SUPER"/>
- </production>
- <production symbol="SpecialName">
- <terminal symbol="NULL"/>
- </production>
- <production symbol="ArgumentList">
- <nonterminal symbol="Expression"/>
- </production>
- <production symbol="ArgumentList">
- <nonterminal symbol="ArgumentList"/>
- <terminal symbol="COMMA"/>
- <nonterminal symbol="Expression"/>
- </production>
- <production symbol="NewAllocationExpression">
- <nonterminal symbol="PlainNewAllocationExpression"/>
- </production>
- <production symbol="NewAllocationExpression">
- <nonterminal symbol="QualifiedName"/>
- <terminal symbol="DOT"/>
- <nonterminal symbol="PlainNewAllocationExpression"/>
- </production>
- <production symbol="PlainNewAllocationExpression">
- <nonterminal symbol="ArrayAllocationExpression"/>
- </production>
- <production symbol="PlainNewAllocationExpression">
- <nonterminal symbol="ClassAllocationExpression"/>
- </production>
- <production symbol="PlainNewAllocationExpression">
- <nonterminal symbol="ArrayAllocationExpression"/>
- <terminal symbol="COPEN"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="PlainNewAllocationExpression">
- <nonterminal symbol="ClassAllocationExpression"/>
- <terminal symbol="COPEN"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="PlainNewAllocationExpression">
- <nonterminal symbol="ArrayAllocationExpression"/>
- <terminal symbol="COPEN"/>
- <nonterminal symbol="ArrayInitializers"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="PlainNewAllocationExpression">
- <nonterminal symbol="ClassAllocationExpression"/>
- <terminal symbol="COPEN"/>
- <nonterminal symbol="FieldDeclarations"/>
- <terminal symbol="CCLOSE"/>
- </production>
- <production symbol="ClassAllocationExpression">
- <terminal symbol="NEW"/>
- <nonterminal symbol="TypeName"/>
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="ArgumentList"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="ClassAllocationExpression">
- <terminal symbol="NEW"/>
- <nonterminal symbol="TypeName"/>
- <terminal symbol="DOPEN"/>
- <terminal symbol="DCLOSE"/>
- </production>
- <production symbol="ArrayAllocationExpression">
- <terminal symbol="NEW"/>
- <nonterminal symbol="TypeName"/>
- <nonterminal symbol="DimExprs"/>
- <nonterminal symbol="Dims"/>
- </production>
- <production symbol="ArrayAllocationExpression">
- <terminal symbol="NEW"/>
- <nonterminal symbol="TypeName"/>
- <nonterminal symbol="DimExprs"/>
- </production>
- <production symbol="ArrayAllocationExpression">
- <terminal symbol="NEW"/>
- <nonterminal symbol="TypeName"/>
- <nonterminal symbol="Dims"/>
- </production>
- <production symbol="DimExprs">
- <nonterminal symbol="DimExpr"/>
- </production>
- <production symbol="DimExprs">
- <nonterminal symbol="DimExprs"/>
- <nonterminal symbol="DimExpr"/>
- </production>
- <production symbol="DimExpr">
- <terminal symbol="BOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="BCLOSE"/>
- </production>
- <production symbol="Dims">
- <terminal symbol="OP_DIM"/>
- </production>
- <production symbol="Dims">
- <nonterminal symbol="Dims"/>
- <terminal symbol="OP_DIM"/>
- </production>
- <production symbol="PostfixExpression">
- <nonterminal symbol="PrimaryExpression"/>
- </production>
- <production symbol="PostfixExpression">
- <nonterminal symbol="RealPostfixExpression"/>
- </production>
- <production symbol="RealPostfixExpression">
- <nonterminal symbol="PostfixExpression"/>
- <terminal symbol="OP_INC"/>
- </production>
- <production symbol="RealPostfixExpression">
- <nonterminal symbol="PostfixExpression"/>
- <terminal symbol="OP_DEC"/>
- </production>
- <production symbol="UnaryExpression">
- <terminal symbol="OP_INC"/>
- <nonterminal symbol="UnaryExpression"/>
- </production>
- <production symbol="UnaryExpression">
- <terminal symbol="OP_DEC"/>
- <nonterminal symbol="UnaryExpression"/>
- </production>
- <production symbol="UnaryExpression">
- <nonterminal symbol="ArithmeticUnaryOperator"/>
- <nonterminal symbol="CastExpression"/>
- </production>
- <production symbol="UnaryExpression">
- <nonterminal symbol="LogicalUnaryExpression"/>
- </production>
- <production symbol="LogicalUnaryExpression">
- <nonterminal symbol="PostfixExpression"/>
- </production>
- <production symbol="LogicalUnaryExpression">
- <nonterminal symbol="LogicalUnaryOperator"/>
- <nonterminal symbol="UnaryExpression"/>
- </production>
- <production symbol="LogicalUnaryOperator">
- <terminal symbol="TILDE"/>
- </production>
- <production symbol="LogicalUnaryOperator">
- <terminal symbol="NOT"/>
- </production>
- <production symbol="ArithmeticUnaryOperator">
- <terminal symbol="PLUS"/>
- </production>
- <production symbol="ArithmeticUnaryOperator">
- <terminal symbol="MINUS"/>
- </production>
- <production symbol="CastExpression">
- <nonterminal symbol="UnaryExpression"/>
- </production>
- <production symbol="CastExpression">
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="PrimitiveTypeExpression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="CastExpression"/>
- </production>
- <production symbol="CastExpression">
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="ClassTypeExpression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="CastExpression"/>
- </production>
- <production symbol="CastExpression">
- <terminal symbol="DOPEN"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="DCLOSE"/>
- <nonterminal symbol="LogicalUnaryExpression"/>
- </production>
- <production symbol="PrimitiveTypeExpression">
- <nonterminal symbol="PrimitiveType"/>
- </production>
- <production symbol="PrimitiveTypeExpression">
- <nonterminal symbol="PrimitiveType"/>
- <nonterminal symbol="Dims"/>
- </production>
- <production symbol="ClassTypeExpression">
- <nonterminal symbol="QualifiedName"/>
- <nonterminal symbol="Dims"/>
- </production>
- <production symbol="MultiplicativeExpression">
- <nonterminal symbol="CastExpression"/>
- </production>
- <production symbol="MultiplicativeExpression">
- <nonterminal symbol="MultiplicativeExpression"/>
- <terminal symbol="MULT"/>
- <nonterminal symbol="CastExpression"/>
- </production>
- <production symbol="MultiplicativeExpression">
- <nonterminal symbol="MultiplicativeExpression"/>
- <terminal symbol="DIV"/>
- <nonterminal symbol="CastExpression"/>
- </production>
- <production symbol="MultiplicativeExpression">
- <nonterminal symbol="MultiplicativeExpression"/>
- <terminal symbol="MOD"/>
- <nonterminal symbol="CastExpression"/>
- </production>
- <production symbol="AdditiveExpression">
- <nonterminal symbol="MultiplicativeExpression"/>
- </production>
- <production symbol="AdditiveExpression">
- <nonterminal symbol="AdditiveExpression"/>
- <terminal symbol="PLUS"/>
- <nonterminal symbol="MultiplicativeExpression"/>
- </production>
- <production symbol="AdditiveExpression">
- <nonterminal symbol="AdditiveExpression"/>
- <terminal symbol="MINUS"/>
- <nonterminal symbol="MultiplicativeExpression"/>
- </production>
- <production symbol="ShiftExpression">
- <nonterminal symbol="AdditiveExpression"/>
- </production>
- <production symbol="ShiftExpression">
- <nonterminal symbol="ShiftExpression"/>
- <terminal symbol="OP_SHL"/>
- <nonterminal symbol="AdditiveExpression"/>
- </production>
- <production symbol="ShiftExpression">
- <nonterminal symbol="ShiftExpression"/>
- <terminal symbol="OP_SHR"/>
- <nonterminal symbol="AdditiveExpression"/>
- </production>
- <production symbol="ShiftExpression">
- <nonterminal symbol="ShiftExpression"/>
- <terminal symbol="OP_SHRR"/>
- <nonterminal symbol="AdditiveExpression"/>
- </production>
- <production symbol="RelationalExpression">
- <nonterminal symbol="ShiftExpression"/>
- </production>
- <production symbol="RelationalExpression">
- <nonterminal symbol="RelationalExpression"/>
- <terminal symbol="LT"/>
- <nonterminal symbol="ShiftExpression"/>
- </production>
- <production symbol="RelationalExpression">
- <nonterminal symbol="RelationalExpression"/>
- <terminal symbol="GT"/>
- <nonterminal symbol="ShiftExpression"/>
- </production>
- <production symbol="RelationalExpression">
- <nonterminal symbol="RelationalExpression"/>
- <terminal symbol="OP_LE"/>
- <nonterminal symbol="ShiftExpression"/>
- </production>
- <production symbol="RelationalExpression">
- <nonterminal symbol="RelationalExpression"/>
- <terminal symbol="OP_GE"/>
- <nonterminal symbol="ShiftExpression"/>
- </production>
- <production symbol="RelationalExpression">
- <nonterminal symbol="RelationalExpression"/>
- <terminal symbol="INSTANCEOF"/>
- <nonterminal symbol="TypeSpecifier"/>
- </production>
- <production symbol="EqualityExpression">
- <nonterminal symbol="RelationalExpression"/>
- </production>
- <production symbol="EqualityExpression">
- <nonterminal symbol="EqualityExpression"/>
- <terminal symbol="OP_EQ"/>
- <nonterminal symbol="RelationalExpression"/>
- </production>
- <production symbol="EqualityExpression">
- <nonterminal symbol="EqualityExpression"/>
- <terminal symbol="OP_NE"/>
- <nonterminal symbol="RelationalExpression"/>
- </production>
- <production symbol="AndExpression">
- <nonterminal symbol="EqualityExpression"/>
- </production>
- <production symbol="AndExpression">
- <nonterminal symbol="AndExpression"/>
- <terminal symbol="AND"/>
- <nonterminal symbol="EqualityExpression"/>
- </production>
- <production symbol="ExclusiveOrExpression">
- <nonterminal symbol="AndExpression"/>
- </production>
- <production symbol="ExclusiveOrExpression">
- <nonterminal symbol="ExclusiveOrExpression"/>
- <terminal symbol="XOR"/>
- <nonterminal symbol="AndExpression"/>
- </production>
- <production symbol="InclusiveOrExpression">
- <nonterminal symbol="ExclusiveOrExpression"/>
- </production>
- <production symbol="InclusiveOrExpression">
- <nonterminal symbol="InclusiveOrExpression"/>
- <terminal symbol="OR"/>
- <nonterminal symbol="ExclusiveOrExpression"/>
- </production>
- <production symbol="ConditionalAndExpression">
- <nonterminal symbol="InclusiveOrExpression"/>
- </production>
- <production symbol="ConditionalAndExpression">
- <nonterminal symbol="ConditionalAndExpression"/>
- <terminal symbol="OP_LAND"/>
- <nonterminal symbol="InclusiveOrExpression"/>
- </production>
- <production symbol="ConditionalOrExpression">
- <nonterminal symbol="ConditionalAndExpression"/>
- </production>
- <production symbol="ConditionalOrExpression">
- <nonterminal symbol="ConditionalOrExpression"/>
- <terminal symbol="OP_LOR"/>
- <nonterminal symbol="ConditionalAndExpression"/>
- </production>
- <production symbol="ConditionalExpression">
- <nonterminal symbol="ConditionalOrExpression"/>
- </production>
- <production symbol="ConditionalExpression">
- <nonterminal symbol="ConditionalOrExpression"/>
- <terminal symbol="QM"/>
- <nonterminal symbol="Expression"/>
- <terminal symbol="COLON"/>
- <nonterminal symbol="ConditionalExpression"/>
- </production>
- <production symbol="AssignmentExpression">
- <nonterminal symbol="ConditionalExpression"/>
- </production>
- <production symbol="AssignmentExpression">
- <nonterminal symbol="UnaryExpression"/>
- <nonterminal symbol="AssignmentOperator"/>
- <nonterminal symbol="AssignmentExpression"/>
- </production>
- <production symbol="AssignmentOperator">
- <terminal symbol="EQ"/>
- </production>
- <production symbol="AssignmentOperator">
- <terminal symbol="ASS_OP"/>
- </production>
- <production symbol="Expression">
- <nonterminal symbol="AssignmentExpression"/>
- </production>
- <production symbol="ConstantExpression">
- <nonterminal symbol="ConditionalExpression"/>
- </production>
- <start symbol="CompilationUnit"/>
- </grammar>
-