1*0c56280aSSorin Basca /* 2*0c56280aSSorin Basca * Licensed to the Apache Software Foundation (ASF) under one or more 3*0c56280aSSorin Basca * contributor license agreements. See the NOTICE file distributed with 4*0c56280aSSorin Basca * this work for additional information regarding copyright ownership. 5*0c56280aSSorin Basca * The ASF licenses this file to You under the Apache License, Version 2.0 6*0c56280aSSorin Basca * (the "License"); you may not use this file except in compliance with 7*0c56280aSSorin Basca * the License. You may obtain a copy of the License at 8*0c56280aSSorin Basca * 9*0c56280aSSorin Basca * http://www.apache.org/licenses/LICENSE-2.0 10*0c56280aSSorin Basca * 11*0c56280aSSorin Basca * Unless required by applicable law or agreed to in writing, software 12*0c56280aSSorin Basca * distributed under the License is distributed on an "AS IS" BASIS, 13*0c56280aSSorin Basca * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14*0c56280aSSorin Basca * See the License for the specific language governing permissions and 15*0c56280aSSorin Basca * limitations under the License. 16*0c56280aSSorin Basca * 17*0c56280aSSorin Basca */ 18*0c56280aSSorin Basca /* Generated By:JJTree: Do not edit this line. SimpleNode.java */ 19*0c56280aSSorin Basca /* JJT: 0.3pre1 */ 20*0c56280aSSorin Basca 21*0c56280aSSorin Basca package Mini; 22*0c56280aSSorin Basca 23*0c56280aSSorin Basca /** 24*0c56280aSSorin Basca * 25*0c56280aSSorin Basca * @version $Id$ 26*0c56280aSSorin Basca */ 27*0c56280aSSorin Basca public abstract class SimpleNode implements Node { 28*0c56280aSSorin Basca protected Node parent; 29*0c56280aSSorin Basca protected Node[] children; 30*0c56280aSSorin Basca protected int id; 31*0c56280aSSorin Basca protected MiniParser parser; 32*0c56280aSSorin Basca SimpleNode(int i)33*0c56280aSSorin Basca public SimpleNode(int i) { 34*0c56280aSSorin Basca id = i; 35*0c56280aSSorin Basca } 36*0c56280aSSorin Basca SimpleNode(MiniParser p, int i)37*0c56280aSSorin Basca public SimpleNode(MiniParser p, int i) { 38*0c56280aSSorin Basca this(i); 39*0c56280aSSorin Basca parser = p; 40*0c56280aSSorin Basca } 41*0c56280aSSorin Basca jjtOpen()42*0c56280aSSorin Basca public void jjtOpen() { 43*0c56280aSSorin Basca } 44*0c56280aSSorin Basca jjtClose()45*0c56280aSSorin Basca public void jjtClose() { 46*0c56280aSSorin Basca } 47*0c56280aSSorin Basca closeNode()48*0c56280aSSorin Basca public void closeNode() { 49*0c56280aSSorin Basca } 50*0c56280aSSorin Basca jjtSetParent(Node n)51*0c56280aSSorin Basca public void jjtSetParent(Node n) { parent = n; } jjtGetParent()52*0c56280aSSorin Basca public Node jjtGetParent() { return parent; } 53*0c56280aSSorin Basca jjtAddChild(Node n, int i)54*0c56280aSSorin Basca public void jjtAddChild(Node n, int i) { 55*0c56280aSSorin Basca if (children == null) { 56*0c56280aSSorin Basca children = new Node[i + 1]; 57*0c56280aSSorin Basca } else if (i >= children.length) { 58*0c56280aSSorin Basca Node c[] = new Node[i + 1]; 59*0c56280aSSorin Basca System.arraycopy(children, 0, c, 0, children.length); 60*0c56280aSSorin Basca children = c; 61*0c56280aSSorin Basca } 62*0c56280aSSorin Basca children[i] = n; 63*0c56280aSSorin Basca } 64*0c56280aSSorin Basca jjtGetChild(int i)65*0c56280aSSorin Basca public Node jjtGetChild(int i) { 66*0c56280aSSorin Basca return children[i]; 67*0c56280aSSorin Basca } 68*0c56280aSSorin Basca jjtGetNumChildren()69*0c56280aSSorin Basca public int jjtGetNumChildren() { 70*0c56280aSSorin Basca return (children == null) ? 0 : children.length; 71*0c56280aSSorin Basca } 72*0c56280aSSorin Basca 73*0c56280aSSorin Basca /* You can override these two methods in subclasses of SimpleNode to 74*0c56280aSSorin Basca customize the way the node appears when the tree is dumped. If 75*0c56280aSSorin Basca your output uses more than one line you should override 76*0c56280aSSorin Basca toString(String), otherwise overriding toString() is probably all 77*0c56280aSSorin Basca you need to do. */ 78*0c56280aSSorin Basca 79*0c56280aSSorin Basca @Override toString()80*0c56280aSSorin Basca public String toString() { return MiniParserTreeConstants.jjtNodeName[id]; } toString(String prefix)81*0c56280aSSorin Basca public String toString(String prefix) { return prefix + toString(); } 82*0c56280aSSorin Basca 83*0c56280aSSorin Basca /* Override this method if you want to customize how the node dumps 84*0c56280aSSorin Basca out its children. */ 85*0c56280aSSorin Basca dump(String prefix)86*0c56280aSSorin Basca public void dump(String prefix) { 87*0c56280aSSorin Basca System.out.println(toString(prefix)); 88*0c56280aSSorin Basca if (children != null) { 89*0c56280aSSorin Basca for (int i = 0; i < children.length; ++i) { 90*0c56280aSSorin Basca SimpleNode n = (SimpleNode)children[i]; 91*0c56280aSSorin Basca if (n != null) { 92*0c56280aSSorin Basca n.dump(prefix + " "); 93*0c56280aSSorin Basca } 94*0c56280aSSorin Basca } 95*0c56280aSSorin Basca } 96*0c56280aSSorin Basca } 97*0c56280aSSorin Basca } 98*0c56280aSSorin Basca 99