private Node maybeCreateAnyType(Node n, Node type) { return type == null ? TypeDeclarationsIR.anyType().useSourceInfoIfMissingFrom(n) : type; }
private Node maybeCreateAnyType(Node n, Node type) { return type == null ? TypeDeclarationsIR.anyType().useSourceInfoIfMissingFrom(n) : type; }
Node processTypeName(TypeNameTree tree) { Node typeNode; if (tree.segments.size() == 1) { String typeName = tree.segments.get(0); if (typeName.equals("any")) typeNode = cloneProps(anyType()); else if (typeName.equals("number")) typeNode = cloneProps(numberType()); else if (typeName.equals("boolean")) typeNode = cloneProps(booleanType()); else if (typeName.equals("string")) typeNode = cloneProps(stringType()); else if (typeName.equals("void")) typeNode = cloneProps(voidType()); else if (typeName.equals("undefined")) typeNode = cloneProps(undefinedType()); else typeNode = cloneProps(namedType(tree.segments)); } else { typeNode = cloneProps(namedType(tree.segments)); } setSourceInfo(typeNode, tree); return typeNode; }
case Token.STAR: case Token.EMPTY: // for function types that don't declare a return type return anyType(); case Token.VOID: return undefinedType(); Node child = n.getFirstChild(); return child == null ? anyType() Node returnType = anyType(); LinkedHashMap<String, TypeDeclarationNode> requiredParams = new LinkedHashMap<String, TypeDeclarationNode>(); LinkedHashMap<String, TypeDeclarationNode> optionalParams = new LinkedHashMap<String, TypeDeclarationNode>();
return anyType(); case VOID: return isReturnType ? voidType() : undefinedType(); Node child = n.getFirstChild(); if (child == null) { return anyType(); } else { ImmutableList<TypeDeclarationNode> types = Node returnType = anyType(); LinkedHashMap<String, TypeDeclarationNode> requiredParams = new LinkedHashMap<>(); LinkedHashMap<String, TypeDeclarationNode> optionalParams = new LinkedHashMap<>(); returnType = convertTypeNodeAST(child2, true); if (returnType == null) { returnType = anyType(); Node arrType = convertTypeNodeAST(n.getFirstChild()); if (arrType == null) { arrType = anyType();
switch (typeName) { case "any": typeNode = cloneProps(anyType()); break; case "number":
newNode.setDeclaredTypeExpression(arrayType(anyType()));
setTypeExpression(n, bestJSDocInfo.getType(), false); } else { n.setDeclaredTypeExpression(anyType());