builder.recordEnumParameterType(oldJSDocInfo.getEnumParameterType());
private void visitEnum(NodeTraversal t, Node n, Node parent) { Node name = n.getFirstChild(); Node members = n.getLastChild(); double nextValue = 0; Node[] stringKeys = new Node[members.getChildCount()]; int i = 0; for (Node child = members.getFirstChild(); child != null; child = child.getNext(), i++) { if (child.hasChildren()) { nextValue = child.getFirstChild().getDouble() + 1; } else { child.addChildToFront(IR.number(nextValue++)); } stringKeys[i] = child; } members.detachChildren(); String oldName = name.getString(); String qName = maybePrependCurrNamespace(oldName); JSDocInfoBuilder builder = JSDocInfoBuilder.maybeCopyFrom(n.getJSDocInfo()); builder.recordEnumParameterType( new JSTypeExpression(IR.string("number"), n.getSourceFileName())); Node newDec = NodeUtil.newQNameDeclaration( compiler, qName, IR.objectlit(stringKeys), builder.build()).useSourceInfoFromForTree(n); n.setJSDocInfo(null); parent.replaceChild(n, newDec); t.reportCodeChange(); }
String qName = maybePrependCurrNamespace(oldName); JSDocInfoBuilder builder = JSDocInfoBuilder.maybeCopyFrom(n.getJSDocInfo()); builder.recordEnumParameterType( new JSTypeExpression(IR.string("number"), n.getSourceFileName())); Node newDec = NodeUtil.newQNameDeclaration(
builder.recordEnumParameterType(oldJSDocInfo.getEnumParameterType());
type = createJSTypeExpression(newStringNode("number")); if (!jsdocBuilder.recordEnumParameterType(type)) { addTypeWarning("msg.jsdoc.incompat.type", lineno, charno);
type = createJSTypeExpression(newStringNode("number")); if (!jsdocBuilder.recordEnumParameterType(type)) { addTypeWarning("msg.jsdoc.incompat.type", lineno, charno);