From f8ea8e1f03713231b7aaa28300a54e00657bde47 Mon Sep 17 00:00:00 2001 From: Martin Monperrus Date: Wed, 14 Feb 2018 22:29:49 +0100 Subject: [PATCH] doc: add API documentation to interface JavaReflectionVisitor --- .../visitor/java/JavaReflectionVisitor.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/main/java/spoon/support/visitor/java/JavaReflectionVisitor.java b/src/main/java/spoon/support/visitor/java/JavaReflectionVisitor.java index 12e2a45cb1f..56c55a98aa8 100644 --- a/src/main/java/spoon/support/visitor/java/JavaReflectionVisitor.java +++ b/src/main/java/spoon/support/visitor/java/JavaReflectionVisitor.java @@ -28,42 +28,65 @@ import java.lang.reflect.TypeVariable; import java.lang.reflect.WildcardType; +/** + * Internal, package-visible interface for building shadow classes. + * Client code should not rely on it. + */ interface JavaReflectionVisitor { + /** Visits a {@link java.lang.Package} */ void visitPackage(Package aPackage); + /** Visits a {@link java.lang.Class} */ void visitClass(Class clazz); + /** Visits a {@link java.lang.Class} representing an interface, see {@link Class#isInterface()} ()} */ void visitInterface(Class clazz); + /** Visits a {@link java.lang.Class} representing an enum, see {@link Class#isEnum()} */ void visitEnum(Class clazz); + /** Visits a {@link java.lang.Class} representing an enum, see {@link Class#isAnnotation()} */ void visitAnnotationClass(Class clazz); + /** Visits an {@link Annotation} instance */ void visitAnnotation(Annotation annotation); + /** Visits a {@link Constructor} */ void visitConstructor(Constructor constructor); + /** Visits a {@link RtMethod} (spoon wrapper) */ void visitMethod(RtMethod method); + /** Visits a {@link Field} */ void visitField(Field field); + /** Visits a {@link Field} from an enum */ void visitEnumValue(Field field); + /** Visits a {@link RtParameter} (spoon wrapper) */ void visitParameter(RtParameter parameter); + /** Visits a {@link TypeVariable} */ void visitTypeParameter(TypeVariable parameter); + /** Visits a {@link TypeVariable} */ void visitTypeParameterReference(TypeVariable parameter); + /** Visits a {@link Type} */ void visitType(Type type); + /** Visits a {@link ParameterizedType} */ void visitType(ParameterizedType type); + /** Visits a {@link WildcardType} */ void visitType(WildcardType type); + /** Visits a class as an array reference */ void visitArrayReference(Class typeArray); + /** Visits a class as a class reference */ void visitClassReference(Class clazz); + /** Visits a class as an interface reference */ void visitInterfaceReference(Class anInterface); }