Public Member Functions | |
final void | advanceChildToEnd () |
ASTPair | copy () |
String | toString () |
Public Attributes | |
AST | root |
AST | child |
ASTPair: utility class used for manipulating a pair of ASTs representing the current AST root and current AST sibling. This exists to compensate for the lack of pointers or 'var' arguments in Java.
final void antlr.ASTPair.advanceChildToEnd | ( | ) |
Make sure that child is the last sibling
References antlr.ASTPair.child, and antlr.collections.AST.getNextSibling().
Referenced by antlr.ASTFactory.addASTChild(), PascalParser.constant(), PascalParser.constList(), PascalParser.fieldList(), PascalParser.functionDesignator(), PascalParser.identifierList(), antlr.ASTFactory.makeASTRoot(), PascalParser.parameterGroup(), PascalParser.parameterList(), PascalParser.procedureStatement(), PascalParser.recordSection(), PascalParser.statements(), PascalParser.tag(), and PascalParser.typeList().
ASTPair antlr.ASTPair.copy | ( | ) |
Copy an ASTPair. Don't call it clone() because we want type-safety
References antlr.ASTPair.child, and antlr.ASTPair.root.
String antlr.ASTPair.toString | ( | ) |
References antlr.ASTPair.child, antlr.collections.AST.getText(), and antlr.ASTPair.root.
Referenced by antlr.ASTFactory.addASTChild(), antlr.ASTPair.advanceChildToEnd(), PascalParser.constant(), PascalParser.constList(), antlr.ASTPair.copy(), PascalParser.fieldList(), PascalParser.functionDesignator(), PascalParser.identifierList(), antlr.ASTFactory.makeASTRoot(), PascalParser.parameterGroup(), PascalParser.parameterList(), PascalParser.procedureStatement(), PascalParser.recordSection(), PascalParser.statements(), PascalParser.tag(), antlr.ASTPair.toString(), and PascalParser.typeList().
Referenced by PascalParser.actualParameter(), antlr.ASTFactory.addASTChild(), PascalParser.arrayType(), PascalParser.assignmentStatement(), PascalParser.baseType(), PascalParser.block(), PascalParser.caseListElement(), PascalParser.caseStatement(), PascalParser.componentType(), PascalParser.compoundStatement(), PascalParser.conditionalStatement(), PascalParser.constant(), PascalParser.constantChr(), PascalParser.constantDefinition(), PascalParser.constantDefinitionPart(), PascalParser.constList(), antlr.ASTPair.copy(), PascalParser.element(), PascalParser.elementList(), PascalParser.empty(), PascalParser.emptyStatement(), PascalParser.expression(), PascalParser.factor(), PascalParser.fieldList(), PascalParser.fileType(), PascalParser.finalValue(), PascalParser.fixedPart(), PascalParser.forList(), PascalParser.formalParameterList(), PascalParser.formalParameterSection(), PascalParser.forStatement(), PascalParser.functionDeclaration(), PascalParser.functionDesignator(), PascalParser.functionType(), PascalParser.gotoStatement(), PascalParser.identifier(), PascalParser.identifierList(), PascalParser.ifStatement(), PascalParser.indexType(), PascalParser.initialValue(), PascalParser.label(), PascalParser.labelDeclarationPart(), antlr.ASTFactory.makeASTRoot(), PascalParser.parameterGroup(), PascalParser.parameterList(), PascalParser.pointerType(), PascalParser.procedureAndFunctionDeclarationPart(), PascalParser.procedureDeclaration(), PascalParser.procedureOrFunctionDeclaration(), PascalParser.procedureStatement(), PascalParser.procedureType(), PascalParser.program(), PascalParser.programHeading(), PascalParser.recordSection(), PascalParser.recordType(), PascalParser.recordVariableList(), PascalParser.repeatStatement(), PascalParser.repetetiveStatement(), PascalParser.resultType(), PascalParser.scalarType(), PascalParser.set(), PascalParser.setType(), PascalParser.sign(), PascalParser.signedFactor(), PascalParser.simpleExpression(), PascalParser.simpleStatement(), PascalParser.simpleType(), PascalParser.statement(), PascalParser.statements(), PascalParser.string(), PascalParser.stringtype(), PascalParser.structuredStatement(), PascalParser.structuredType(), PascalParser.subrangeType(), PascalParser.tag(), PascalParser.term(), antlr.ASTPair.toString(), PascalParser.type(), PascalParser.typeDefinition(), PascalParser.typeDefinitionPart(), PascalParser.typeIdentifier(), PascalParser.typeList(), PascalParser.unlabelledStatement(), PascalParser.unpackedStructuredType(), PascalParser.unsignedConstant(), PascalParser.unsignedInteger(), PascalParser.unsignedNumber(), PascalParser.unsignedReal(), PascalParser.usesUnitsPart(), PascalParser.variable(), PascalParser.variableDeclaration(), PascalParser.variableDeclarationPart(), PascalParser.variant(), PascalParser.variantPart(), PascalParser.whileStatement(), and PascalParser.withStatement().