/** Detach this node from its parent. This is primarily useful in node serialization. (see BSHMethodDeclaration) */ public void prune() { jjtSetParent( null ); }
/** We may not always have a type node (loose typed resources). * Then we create the BSHType node and get the type * from the BSHVariableDeclarator AllocationExpression nodes. */ private void renderTypeNode() { if (jjtGetNumChildren() == 1) { SimpleNode tNode = new BSHType(ParserTreeConstants.JJTTYPE); Node ambigName = jjtGetChild(0); while (ambigName.jjtGetNumChildren() > 0) if ((ambigName = ambigName.jjtGetChild(0)) instanceof BSHAmbiguousName) break; BSHAmbiguousName ambigNew = new BSHAmbiguousName(ParserTreeConstants.JJTAMBIGUOUSNAME); ambigNew.jjtSetParent(tNode); ambigNew.text = ((BSHAmbiguousName) ambigName).text; tNode.jjtAddChild(ambigNew, 0); tNode.jjtSetParent(this); Node[] n = new Node[2]; n[0] = tNode; n[1] = children[0]; children = n; } } }