package com.coding2017.jvm.attr; import com.coding2017.jvm.clz.ClassFile; import com.coding2017.jvm.loader.ByteCodeIterator; public class StackMapTable extends AttributeInfo { private String originalCode; public StackMapTable(int attrNameIndex, int attrLen) { super(attrNameIndex, attrLen); } public static StackMapTable parse(ClassFile clzFile, ByteCodeIterator iter, int nameIndex, int length) { StackMapTable t = new StackMapTable(nameIndex, length); // 后面的StackMapTable太过复杂, 不再处理, 只把原始的代码读进来保存 String code = iter.nextUxToHexString(length); t.setOriginalCode(code); return t; } private void setOriginalCode(String code) { this.originalCode = code; } }