1 5 6 7 package com.hp.hpl.jena.rdql.parser; 8 import com.hp.hpl.jena.rdql.Query; 9 ; 10 11 public class SimpleNode implements Node 12 { 13 protected Node parent; 15 protected Node[] children; 16 17 protected int id; 18 protected RDQLParser parser; 19 20 24 public SimpleNode(int i) { 25 id = i; 26 } 27 28 public SimpleNode(RDQLParser p, int i) { 29 this(i); 30 parser = p; 31 } 32 33 public void jjtOpen() { 34 } 35 36 public void jjtClose() 37 { 38 } 39 40 public void jjtSetParent(Node n) { parent = n; } 41 public Node jjtGetParent() { return parent; } 42 43 public void jjtAddChild(Node n, int i) { 44 if (children == null) { 45 children = new Node[i + 1]; 46 } else if (i >= children.length) { 47 Node c[] = new Node[i + 1]; 48 System.arraycopy(children, 0, c, 0, children.length); 49 children = c; 50 } 51 children[i] = n; 52 } 53 54 public Node jjtGetChild(int i) { 55 return children[i]; 56 } 57 58 public int jjtGetNumChildren() { 59 return (children == null) ? 0 : children.length; 60 } 61 62 67 68 public String toString() { return RDQLParserTreeConstants.jjtNodeName[id]; } 69 public String toString(String prefix) { return prefix + toString(); } 70 71 72 public void postParse(Query query) 75 { 76 if (children != null) 77 { 78 for (int i = 0; i < children.length; ++i) 79 { 80 SimpleNode n = (SimpleNode)children[i]; 81 n.postParse(query); 82 } 83 } 84 } 85 86 88 89 public void dump(String prefix) { 90 System.out.println(toString(prefix)); 91 if (children != null) { 92 for (int i = 0; i < children.length; ++i) { 93 SimpleNode n = (SimpleNode)children[i]; 94 if (n != null) { 95 n.dump(prefix + " "); 96 } 97 } 98 } 99 } 100 } 101 102 128 | Popular Tags |