|
|
@@ -22,10 +22,14 @@ public class PrototypeDump implements Opcodes {
|
|
|
MethodVisitor methodVisitor;
|
|
|
AnnotationVisitor annotationVisitor0;
|
|
|
|
|
|
- classWriter.visit(V1_8, ACC_PUBLIC | ACC_SUPER, "net/ranides/assira/asm/Prototype", null, "java/lang/Object", null);
|
|
|
+ classWriter.visit(V1_8, ACC_PUBLIC | ACC_SUPER, "net/ranides/assira/asm/Prototype", null, "java/lang/Object", new String[]{"java/io/Serializable"});
|
|
|
|
|
|
classWriter.visitSource("Prototype.java", null);
|
|
|
|
|
|
+ {
|
|
|
+ fieldVisitor = classWriter.visitField(ACC_PRIVATE | ACC_FINAL | ACC_STATIC, "serialVersionUID", "J", null, new Long(17L));
|
|
|
+ fieldVisitor.visitEnd();
|
|
|
+ }
|
|
|
{
|
|
|
fieldVisitor = classWriter.visitField(ACC_PRIVATE, "that", "Ljava/lang/Object;", null, null);
|
|
|
fieldVisitor.visitEnd();
|
|
|
@@ -35,18 +39,18 @@ public class PrototypeDump implements Opcodes {
|
|
|
methodVisitor.visitCode();
|
|
|
Label label0 = new Label();
|
|
|
methodVisitor.visitLabel(label0);
|
|
|
- methodVisitor.visitLineNumber(10, label0);
|
|
|
+ methodVisitor.visitLineNumber(14, label0);
|
|
|
methodVisitor.visitVarInsn(ALOAD, 0);
|
|
|
methodVisitor.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", "()V", false);
|
|
|
Label label1 = new Label();
|
|
|
methodVisitor.visitLabel(label1);
|
|
|
- methodVisitor.visitLineNumber(11, label1);
|
|
|
+ methodVisitor.visitLineNumber(15, label1);
|
|
|
methodVisitor.visitVarInsn(ALOAD, 0);
|
|
|
methodVisitor.visitVarInsn(ALOAD, 1);
|
|
|
methodVisitor.visitFieldInsn(PUTFIELD, "net/ranides/assira/asm/Prototype", "that", "Ljava/lang/Object;");
|
|
|
Label label2 = new Label();
|
|
|
methodVisitor.visitLabel(label2);
|
|
|
- methodVisitor.visitLineNumber(12, label2);
|
|
|
+ methodVisitor.visitLineNumber(16, label2);
|
|
|
methodVisitor.visitInsn(RETURN);
|
|
|
Label label3 = new Label();
|
|
|
methodVisitor.visitLabel(label3);
|
|
|
@@ -60,7 +64,7 @@ public class PrototypeDump implements Opcodes {
|
|
|
methodVisitor.visitCode();
|
|
|
Label label0 = new Label();
|
|
|
methodVisitor.visitLabel(label0);
|
|
|
- methodVisitor.visitLineNumber(15, label0);
|
|
|
+ methodVisitor.visitLineNumber(19, label0);
|
|
|
methodVisitor.visitTypeInsn(NEW, "net/ranides/assira/asm/PrototypeSForm");
|
|
|
methodVisitor.visitInsn(DUP);
|
|
|
methodVisitor.visitLdcInsn(Type.getType("Lnet/ranides/assira/reflection/util/PackageScanner;"));
|