public ResolvedReferenceTypeDeclaration getTypeDeclaration(Node node) { if (node instanceof TypeDeclaration) { return getTypeDeclaration((TypeDeclaration) node); } else if (node instanceof ObjectCreationExpr) { return new JavaParserAnonymousClassDeclaration((ObjectCreationExpr) node, typeSolver); } else { throw new IllegalArgumentException(); } }
@Override public List<ResolvedConstructorDeclaration> getConstructors() { return findMembersOfKind(com.github.javaparser.ast.body.ConstructorDeclaration.class) .stream() .map(ctor -> new JavaParserConstructorDeclaration(this, ctor, typeSolver)) .collect(Collectors.toList()); }
@Override public SymbolReference<ResolvedMethodDeclaration> solveMethod(String name, List<ResolvedType> argumentsTypes, boolean staticOnly) { return getContext().solveMethod(name, argumentsTypes, staticOnly); }
List<ResolvedMethodDeclaration> candidateMethods = myDeclaration .getDeclaredMethods() .stream() .filter(m -> m.getName().equals(name) && (!staticOnly || m.isStatic())) .collect(Collectors.toList()); if (!Object.class.getCanonicalName().equals(myDeclaration.getQualifiedName())) { for (ResolvedReferenceType ancestor : myDeclaration.getAncestors()) { SymbolReference<ResolvedMethodDeclaration> res = MethodResolutionLogic.solveMethodInType(ancestor.getTypeDeclaration(), if (candidateMethods.isEmpty() && myDeclaration.getSuperTypeDeclaration().isInterface()) { SymbolReference<ResolvedMethodDeclaration> res = MethodResolutionLogic.solveMethodInType(new ReflectionClassDeclaration(Object.class,
@Override public List<ResolvedFieldDeclaration> getAllFields() { List<JavaParserFieldDeclaration> myFields = findMembersOfKind(com.github.javaparser.ast.body.FieldDeclaration.class) .stream() .flatMap(field -> field.getVariables().stream() .map(variable -> new JavaParserFieldDeclaration(variable, typeSolver))) .collect(Collectors.toList()); List<ResolvedFieldDeclaration> superClassFields = getSuperClass().getTypeDeclaration().getAllFields(); List<ResolvedFieldDeclaration> interfaceFields = getInterfaces().stream() .flatMap(inteface -> inteface.getTypeDeclaration().getAllFields().stream()) .collect(Collectors.toList()); return ImmutableList .<ResolvedFieldDeclaration>builder() .addAll(myFields) .addAll(superClassFields) .addAll(interfaceFields) .build(); }
List<com.github.javaparser.ast.body.TypeDeclaration> typeDeclarations = myDeclaration .findMembersOfKind(com.github.javaparser.ast.body.TypeDeclaration.class); for (ResolvedReferenceType ancestor : myDeclaration.getAncestors()) {
@Override public List<ResolvedReferenceType> getAncestors() { return ImmutableList. <ResolvedReferenceType>builder() .add(getSuperClass()) .addAll(superTypeDeclaration.asReferenceType().getAncestors()) .build(); }
List<ResolvedMethodDeclaration> candidateMethods = myDeclaration .getDeclaredMethods() .stream() .filter(m -> m.getName().equals(name) && (!staticOnly || m.isStatic())) .collect(Collectors.toList()); if (!Object.class.getCanonicalName().equals(myDeclaration.getQualifiedName())) { for (ResolvedReferenceType ancestor : myDeclaration.getAncestors()) { SymbolReference<ResolvedMethodDeclaration> res = MethodResolutionLogic.solveMethodInType(ancestor.getTypeDeclaration(), if (candidateMethods.isEmpty() && myDeclaration.getSuperTypeDeclaration().isInterface()) { SymbolReference<ResolvedMethodDeclaration> res = MethodResolutionLogic.solveMethodInType(new ReflectionClassDeclaration(Object.class,
@Override public List<ResolvedFieldDeclaration> getAllFields() { List<JavaParserFieldDeclaration> myFields = findMembersOfKind(com.github.javaparser.ast.body.FieldDeclaration.class) .stream() .flatMap(field -> field.getVariables().stream() .map(variable -> new JavaParserFieldDeclaration(variable, typeSolver))) .collect(Collectors.toList()); List<ResolvedFieldDeclaration> superClassFields = getSuperClass().getTypeDeclaration().getAllFields(); List<ResolvedFieldDeclaration> interfaceFields = getInterfaces().stream() .flatMap(inteface -> inteface.getTypeDeclaration().getAllFields().stream()) .collect(Collectors.toList()); return ImmutableList .<ResolvedFieldDeclaration>builder() .addAll(myFields) .addAll(superClassFields) .addAll(interfaceFields) .build(); }
List<com.github.javaparser.ast.body.TypeDeclaration> typeDeclarations = myDeclaration .findMembersOfKind(com.github.javaparser.ast.body.TypeDeclaration.class); for (ResolvedReferenceType ancestor : myDeclaration.getAncestors()) {
@Override public List<ResolvedReferenceType> getAncestors(boolean acceptIncompleteList) { return ImmutableList. <ResolvedReferenceType>builder() .add(getSuperClass()) .addAll(superTypeDeclaration.asReferenceType().getAncestors(acceptIncompleteList)) .build(); }
List<ResolvedMethodDeclaration> candidateMethods = myDeclaration .getDeclaredMethods() .stream() .filter(m -> m.getName().equals(name) && (!staticOnly || m.isStatic())) .collect(Collectors.toList()); if (!Object.class.getCanonicalName().equals(myDeclaration.getQualifiedName())) { for (ResolvedReferenceType ancestor : myDeclaration.getAncestors()) { SymbolReference<ResolvedMethodDeclaration> res = MethodResolutionLogic.solveMethodInType(ancestor.getTypeDeclaration(), if (candidateMethods.isEmpty() && myDeclaration.getSuperTypeDeclaration().isInterface()) { SymbolReference<ResolvedMethodDeclaration> res = MethodResolutionLogic.solveMethodInType(new ReflectionClassDeclaration(Object.class,
@Override public List<ResolvedFieldDeclaration> getAllFields() { List<JavaParserFieldDeclaration> myFields = findMembersOfKind(com.github.javaparser.ast.body.FieldDeclaration.class) .stream() .flatMap(field -> field.getVariables().stream() .map(variable -> new JavaParserFieldDeclaration(variable, typeSolver))) .collect(Collectors.toList()); List<ResolvedFieldDeclaration> superClassFields = getSuperClass().getTypeDeclaration().getAllFields(); List<ResolvedFieldDeclaration> interfaceFields = getInterfaces().stream() .flatMap(inteface -> inteface.getTypeDeclaration().getAllFields().stream()) .collect(Collectors.toList()); return ImmutableList .<ResolvedFieldDeclaration>builder() .addAll(myFields) .addAll(superClassFields) .addAll(interfaceFields) .build(); }
List<com.github.javaparser.ast.body.TypeDeclaration> typeDeclarations = myDeclaration .findMembersOfKind(com.github.javaparser.ast.body.TypeDeclaration.class); for (ResolvedReferenceType ancestor : myDeclaration.getAncestors()) {
@Override public List<ResolvedConstructorDeclaration> getConstructors() { return findMembersOfKind(com.github.javaparser.ast.body.ConstructorDeclaration.class) .stream() .map(ctor -> new JavaParserConstructorDeclaration(this, ctor, typeSolver)) .collect(Collectors.toList()); }
public ResolvedReferenceTypeDeclaration getTypeDeclaration(Node node) { if (node instanceof TypeDeclaration) { return getTypeDeclaration((TypeDeclaration)node); } else if (node instanceof ObjectCreationExpr) { return new JavaParserAnonymousClassDeclaration((ObjectCreationExpr)node, typeSolver); } else { throw new IllegalArgumentException(); } }
@Override public Optional<MethodUsage> solveMethodAsUsage(String name, List<ResolvedType> argumentTypes, Context invocationContext, List<ResolvedType> typeParameters) { return getContext().solveMethodAsUsage(name, argumentTypes); }
@Override public List<ResolvedReferenceType> getAncestors() { return ImmutableList. <ResolvedReferenceType>builder() .add(getSuperClass()) .addAll(superTypeDeclaration.asReferenceType().getAncestors()) .build(); }