Mariusz Sieroń 6 rokov pred
rodič
commit
81b93b3df9

+ 5 - 1
assira.drafts/src/test/java/net/ranides/assira/asm/Prototype.java

@@ -3,7 +3,11 @@ package net.ranides.assira.asm;
 import net.ranides.assira.reflection.util.PackageScanner;
 import net.ranides.assira.text.IOStrings;
 
-public class Prototype {
+import java.io.Serializable;
+
+public class Prototype implements Serializable {
+
+    private static final long serialVersionUID = 17L;
 
     private Object that;
 

+ 9 - 5
assira.drafts/src/test/java/net/ranides/assira/asm/PrototypeDump.java

@@ -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;"));