@Override public void visitParameterizedType(ParameterizedTypeTree tree) { scan(tree.type()); scan(tree.typeArguments()); }
@Override public void visitParameterizedType(ParameterizedTypeTree tree) { scan(tree.annotations()); scan(tree.type()); scan(tree.typeArguments()); }
private static boolean isCollectionOfSerializable(Tree tree) { if (tree.is(Tree.Kind.PARAMETERIZED_TYPE)) { ParameterizedTypeTree typeTree = (ParameterizedTypeTree) tree; if (isSubtypeOfCollectionApi(typeTree.symbolType())) { return typeTree.typeArguments().stream().allMatch(SerializableFieldInSerializableClassCheck::isCollectionOfSerializable); } } return isSerializable(tree); }
public static Returns getReturnType(@Nullable Tree tree) { if (tree != null) { Tree returnType = tree; while (returnType.is(Tree.Kind.PARAMETERIZED_TYPE)) { returnType = ((ParameterizedTypeTree) returnType).type(); } if (returnType.is(Tree.Kind.ARRAY_TYPE)) { return ARRAY; } else if (isCollection(returnType)) { return COLLECTION; } } return OTHERS; }
@Override public void visitParameterizedType(ParameterizedTypeTree parameterizedTypeTree) { for (Iterator<Tree> iterator = parameterizedTypeTree.typeArguments().iterator(); iterator.hasNext() && !withResourceTypeVariable; ) { TypeTreeVisitor treeVisitor = new TypeTreeVisitor(); iterator.next().accept(treeVisitor); withResourceTypeVariable = treeVisitor.isResourceTypeInstance(); } super.visitParameterizedType(parameterizedTypeTree); }
private static void moveAnnotations(ExpressionTree result, ExpressionTree firstIdentifier) { List<AnnotationTree> firstIdentifierAnnotations; boolean isParameterizedType = firstIdentifier.is(Tree.Kind.PARAMETERIZED_TYPE); if (isParameterizedType) { firstIdentifierAnnotations = ((ParameterizedTypeTree) firstIdentifier).annotations(); } else { firstIdentifierAnnotations = ((IdentifierTree) firstIdentifier).annotations(); } // move the annotations from the first identifier to the member select or the parameterized type if (!firstIdentifierAnnotations.isEmpty()) { if (result.is(Tree.Kind.MEMBER_SELECT)) { ((MemberSelectExpressionTreeImpl) result).complete(firstIdentifierAnnotations); } else { ((ParameterizedTypeTreeImpl) result).complete(firstIdentifierAnnotations); } if (isParameterizedType) { ((ParameterizedTypeTreeImpl) firstIdentifier).complete(ImmutableList.<AnnotationTree>of()); } else { ((IdentifierTreeImpl) firstIdentifier).complete(ImmutableList.<AnnotationTree>of()); } } }
@CheckForNull private static MethodJavaType getMethodType(JavaSymbol.MethodJavaSymbol methodSymbol, Tree methodName) { if (!methodSymbol.isParametrized()) { return null; } Type type = null; if (methodName.is(Tree.Kind.MEMBER_SELECT)) { type = ((MemberSelectExpressionTree) methodName).identifier().symbolType(); } else if (methodName.is(Tree.Kind.IDENTIFIER)) { type = ((IdentifierTree) methodName).symbolType(); } else if (methodName.is(Tree.Kind.PARAMETERIZED_TYPE)) { type = ((ParameterizedTypeTree) methodName).symbolType(); } if (type instanceof MethodJavaType) { return (MethodJavaType) type; } return null; }
public static Returns getReturnType(@Nullable Tree tree) { if (tree != null) { Tree returnType = tree; while (returnType.is(Tree.Kind.PARAMETERIZED_TYPE)) { returnType = ((ParameterizedTypeTree) returnType).type(); } if (returnType.is(Tree.Kind.ARRAY_TYPE)) { return ARRAY; } else if (isCollection(returnType)) { return COLLECTION; } } return OTHERS; }
private static boolean isParameterizedType(TypeTree type) { if (type.is(Tree.Kind.ARRAY_TYPE)) { return isParameterizedType(((ArrayTypeTree) type).type()); } return type.is(Tree.Kind.PARAMETERIZED_TYPE) && !((ParameterizedTypeTree) type).typeArguments().isEmpty(); }
@CheckForNull private static MethodJavaType getMethodType(JavaSymbol.MethodJavaSymbol methodSymbol, Tree methodName) { if (!methodSymbol.isParametrized()) { return null; } Type type = null; if (methodName.is(Tree.Kind.MEMBER_SELECT)) { type = ((MemberSelectExpressionTree) methodName).identifier().symbolType(); } else if (methodName.is(Tree.Kind.IDENTIFIER)) { type = ((IdentifierTree) methodName).symbolType(); } else if (methodName.is(Tree.Kind.PARAMETERIZED_TYPE)) { type = ((ParameterizedTypeTree) methodName).symbolType(); } if (type instanceof MethodJavaType) { return (MethodJavaType) type; } return null; }
@Override public void visitParameterizedType(ParameterizedTypeTree tree) { resolveAs(tree.type(), JavaSymbol.TYP); resolveAs((List<Tree>) tree.typeArguments(), JavaSymbol.TYP); registerType(tree, parametrizedTypeWithTypeArguments(getType(tree.type()).getSymbol(), tree.typeArguments())); }
public static Returns getReturnType(@Nullable Tree tree) { if (tree != null) { Tree returnType = tree; while (returnType.is(Tree.Kind.PARAMETERIZED_TYPE)) { returnType = ((ParameterizedTypeTree) returnType).type(); } if (returnType.is(Tree.Kind.ARRAY_TYPE)) { return ARRAY; } else if (isCollection(returnType)) { return COLLECTION; } } return OTHERS; }
@Override public void visitParameterizedType(ParameterizedTypeTree tree) { scan(tree.annotations()); scan(tree.type()); scan(tree.typeArguments()); }
private static boolean isParameterizedType(TypeTree type) { if (type.is(Tree.Kind.ARRAY_TYPE)) { return isParameterizedType(((ArrayTypeTree) type).type()); } return type.is(Tree.Kind.PARAMETERIZED_TYPE) && !((ParameterizedTypeTree) type).typeArguments().isEmpty(); }
private static boolean isCollectionOfSerializable(Tree tree) { if (tree.is(Tree.Kind.PARAMETERIZED_TYPE)) { ParameterizedTypeTree typeTree = (ParameterizedTypeTree) tree; if (isSubtypeOfCollectionApi(typeTree.symbolType())) { return typeTree.typeArguments().stream().allMatch(SerializableFieldInSerializableClassCheck::isCollectionOfSerializable); } } return isSerializable(tree); }
@Override public void visitParameterizedType(ParameterizedTypeTree tree) { checkTypes(tree.type()); checkTypes((List<Tree>) tree.typeArguments()); super.visitParameterizedType(tree); }
@Override public void visitParameterizedType(ParameterizedTypeTree tree) { classType = tree.type().symbolType().is("java.lang.Class"); super.visitParameterizedType(tree); classType = false; }
@Override public void visitParameterizedType(ParameterizedTypeTree tree) { scan(tree.annotations()); scan(tree.type()); scan(tree.typeArguments()); }
private static SyntaxToken getIdentifierToken(TypeTree typeTree) { if (typeTree.is(Tree.Kind.IDENTIFIER)) { return ((IdentifierTree) typeTree).identifierToken(); } else if (typeTree.is(Tree.Kind.MEMBER_SELECT)) { return ((MemberSelectExpressionTree) typeTree).identifier().identifierToken(); } else { return ((ParameterizedTypeTree) typeTree).typeArguments().closeBracketToken(); } }
@Override public void visitParameterizedType(ParameterizedTypeTree tree) { checkTypes(tree.type()); checkTypes((List<Tree>) tree.typeArguments()); super.visitParameterizedType(tree); }