@Override public ResolvedType getType() { return ReflectionFactory.typeUsageFor(genericType, typeSolver); } }
@Override public AccessSpecifier accessSpecifier() { return ReflectionFactory.modifiersToAccessLevel(this.clazz.getModifiers()); } }
@Override public ResolvedTypeDeclaration declaringType() { return ReflectionFactory.typeDeclarationFor(field.getDeclaringClass(), typeSolver); }
} else if (type instanceof ParameterizedType) { ParameterizedType pt = (ParameterizedType) type; ResolvedReferenceType rawType = typeUsageFor(pt.getRawType(), typeSolver).asReferenceType(); List<java.lang.reflect.Type> actualTypes = new ArrayList<>(); actualTypes.addAll(Arrays.asList(pt.getActualTypeArguments())); rawType = rawType.transformTypeParameters(tp -> typeUsageFor(actualTypes.remove(0), typeSolver)).asReferenceType(); return rawType; } else if (type instanceof Class) { return new ResolvedArrayType(typeUsageFor(c.getComponentType(), typeSolver)); } else { return new ReferenceTypeImpl(typeDeclarationFor(c, typeSolver), typeSolver); return new ResolvedArrayType(typeUsageFor(genericArrayType.getGenericComponentType(), typeSolver)); } else if (type instanceof WildcardType) { WildcardType wildcardType = (WildcardType) type; throw new UnsupportedOperationException(); return ResolvedWildcard.superBound(typeUsageFor(wildcardType.getLowerBounds()[0], typeSolver)); throw new UnsupportedOperationException(); return ResolvedWildcard.extendsBound(typeUsageFor(wildcardType.getUpperBounds()[0], typeSolver));
} else if (type instanceof ParameterizedType) { ParameterizedType pt = (ParameterizedType) type; ResolvedReferenceType rawType = typeUsageFor(pt.getRawType(), typeSolver).asReferenceType(); List<java.lang.reflect.Type> actualTypes = new ArrayList<>(); actualTypes.addAll(Arrays.asList(pt.getActualTypeArguments())); rawType = rawType.transformTypeParameters(tp -> typeUsageFor(actualTypes.remove(0), typeSolver)).asReferenceType(); return rawType; } else if (type instanceof Class) { return new ResolvedArrayType(typeUsageFor(c.getComponentType(), typeSolver)); } else { return new ReferenceTypeImpl(typeDeclarationFor(c, typeSolver), typeSolver); return new ResolvedArrayType(typeUsageFor(genericArrayType.getGenericComponentType(), typeSolver)); } else if (type instanceof WildcardType) { WildcardType wildcardType = (WildcardType) type; throw new UnsupportedOperationException(); return ResolvedWildcard.superBound(typeUsageFor(wildcardType.getLowerBounds()[0], typeSolver)); throw new UnsupportedOperationException(); return ResolvedWildcard.extendsBound(typeUsageFor(wildcardType.getUpperBounds()[0], typeSolver));
@Override public ResolvedType getType() { return ReflectionFactory.typeUsageFor(genericType, typeSolver); } }
@Override public ResolvedTypeDeclaration declaringType() { return ReflectionFactory.typeDeclarationFor(field.getDeclaringClass(), typeSolver); }
@Override public AccessSpecifier accessSpecifier() { return ReflectionFactory.modifiersToAccessLevel(field.getModifiers()); } }
} else if (type instanceof ParameterizedType) { ParameterizedType pt = (ParameterizedType) type; ResolvedReferenceType rawType = typeUsageFor(pt.getRawType(), typeSolver).asReferenceType(); List<java.lang.reflect.Type> actualTypes = new ArrayList<>(); actualTypes.addAll(Arrays.asList(pt.getActualTypeArguments())); rawType = rawType.transformTypeParameters(tp -> typeUsageFor(actualTypes.remove(0), typeSolver)).asReferenceType(); return rawType; } else if (type instanceof Class) { return new ResolvedArrayType(typeUsageFor(c.getComponentType(), typeSolver)); } else { return new ReferenceTypeImpl(typeDeclarationFor(c, typeSolver), typeSolver); return new ResolvedArrayType(typeUsageFor(genericArrayType.getGenericComponentType(), typeSolver)); } else if (type instanceof WildcardType) { WildcardType wildcardType = (WildcardType) type; throw new UnsupportedOperationException(); return ResolvedWildcard.superBound(typeUsageFor(wildcardType.getLowerBounds()[0], typeSolver)); throw new UnsupportedOperationException(); return ResolvedWildcard.extendsBound(typeUsageFor(wildcardType.getUpperBounds()[0], typeSolver));
@Override public ResolvedType getType() { return ReflectionFactory.typeUsageFor(genericType, typeSolver); }
@Override public ResolvedTypeDeclaration declaringType() { return ReflectionFactory.typeDeclarationFor(field.getDeclaringClass(), typeSolver); }
@Override public AccessSpecifier accessSpecifier() { return ReflectionFactory.modifiersToAccessLevel(this.method.getModifiers()); }
@Override public ResolvedType getReturnType() { return ReflectionFactory.typeUsageFor(method.getGenericReturnType(), typeSolver); }
public Optional<ResolvedReferenceTypeDeclaration> containerType() { Class<?> declaringClass = clazz.getDeclaringClass(); return declaringClass == null ? Optional.empty() : Optional.of(ReflectionFactory.typeDeclarationFor(declaringClass, typeSolver)); } }
@Override public AccessSpecifier accessSpecifier() { return ReflectionFactory.modifiersToAccessLevel(this.clazz.getModifiers()); }
private ResolvedType calcType() { // TODO consider interfaces, enums, primitive types, arrays return ReflectionFactory.typeUsageFor(field.getGenericType(), typeSolver); }
public Optional<ResolvedReferenceTypeDeclaration> containerType() { Class<?> declaringClass = clazz.getDeclaringClass(); return declaringClass == null ? Optional.empty() : Optional.of(ReflectionFactory.typeDeclarationFor(declaringClass, typeSolver)); } }
@Override public com.github.javaparser.ast.Modifier.Keyword accessSpecifier() { return ReflectionFactory.modifiersToAccessLevel(field.getModifiers()); } }
private ResolvedType calcType() { // TODO consider interfaces, enums, primitive types, arrays return ReflectionFactory.typeUsageFor(field.getGenericType(), typeSolver); }
public Optional<ResolvedReferenceTypeDeclaration> containerType() { Class<?> declaringClass = clazz.getDeclaringClass(); return declaringClass == null ? Optional.empty() : Optional.of(ReflectionFactory.typeDeclarationFor(declaringClass, typeSolver)); } }