generate(dir, "pkg/FrameTable.class", b);
generate(dir, "pkg/FrameMap.class", cw.toByteArray());
}
public byte[] dump() {
ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_MAXS);
MethodVisitor mv;
FieldVisitor fv;
cw.visit(V1_6,
ACC_PUBLIC + ACC_SUPER,
"pkg/FrameTable",
null,
"java/lang/Object",
null);
fv = cw.visitField(M, "long", "Ljava/lang/Long;", null, null);
fv.visitEnd();
fv = cw.visitField(M, "double", "Ljava/lang/Double;", null, null);
fv.visitEnd();
fv = cw.visitField(M, "number", "Ljava/lang/Number;", null, null);
fv.visitEnd();
fv = cw.visitField(M, "serializable", I1, null, null);
fv.visitEnd();
fv = cw.visitField(M, "comparable", I2, null, null);
fv.visitEnd();
fv = cw.visitField(M, "longArray", "[Ljava/lang/Long;", null, null);
fv.visitEnd();
fv = cw.visitField(M, "intArray", "[I", null, null);
fv.visitEnd();
fv = cw.visitField(M, "floatArray", "[F", null, null);
fv.visitEnd();
fv = cw.visitField(M, "objectArray", "[Ljava/lang/Object;", null, null);
fv.visitEnd();
mv = cw.visitMethod(ACC_PUBLIC,
"<init>",
"(Ljava/lang/Object;)V",
null,
null);
mv.visitCode();
mv.visitVarInsn(ALOAD, 0);
mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", "()V");
mv.visitInsn(RETURN);
mv.visitMaxs(0, 0);
mv.visitEnd();
uninitializedThisType(cw);
uninitializedLocalType(cw);
uninitializedStackType(cw);
nullType(cw);
topType(cw);
arrayTypes(cw);
mergeTypes(cw);
mergeStackTypes(cw);
mergeNullArray(cw);
appendAndChopFrame(cw);
sameLocals1stackItemFrame(cw);
sameLocals1stackItemFrame2(cw);
sameLocals1stackItemFrameExtended(cw);
sameFrameExtended(cw);
deadCode(cw);
cw.visitEnd();
return cw.toByteArray();
}