1 package mockit.asm.classes;
2
3 import edu.umd.cs.findbugs.annotations.NonNull;
4 import edu.umd.cs.findbugs.annotations.Nullable;
5
6 import mockit.asm.annotations.AnnotationVisitor;
7 import mockit.asm.fields.FieldVisitor;
8 import mockit.asm.methods.MethodVisitor;
9
10
11
12
13 public class WrappingClassVisitor extends ClassVisitor {
14
15
16
17 @NonNull
18 protected final ClassWriter cw;
19
20
21
22
23
24
25
26 protected WrappingClassVisitor(@NonNull ClassWriter cw) {
27 this.cw = cw;
28 }
29
30 @Override
31 public void visit(int version, int access, @NonNull String name, @NonNull ClassInfo additionalInfo) {
32 cw.visit(version, access, name, additionalInfo);
33 }
34
35 @Nullable
36 @Override
37 public AnnotationVisitor visitAnnotation(@NonNull String desc) {
38 return cw.visitAnnotation(desc);
39 }
40
41 @Override
42 public void visitInnerClass(@NonNull String name, @Nullable String outerName, @Nullable String innerName,
43 int access) {
44 cw.visitInnerClass(name, outerName, innerName, access);
45 }
46
47 @Nullable
48 @Override
49 public FieldVisitor visitField(int access, @NonNull String name, @NonNull String desc, @Nullable String signature,
50 @Nullable Object value) {
51 return cw.visitField(access, name, desc, signature, value);
52 }
53
54 @Override
55 public MethodVisitor visitMethod(int access, @NonNull String name, @NonNull String desc, @Nullable String signature,
56 @Nullable String[] exceptions) {
57 return cw.visitMethod(access, name, desc, signature, exceptions);
58 }
59
60 @Override
61 public final byte[] toByteArray() {
62 return cw.toByteArray();
63 }
64 }