code: 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;
          }
      }
docs: 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.