package com.github.ipk2015.coding2017.minijvm.attr; import com.github.ipk2015.coding2017.minijvm.loader.ByteCodeIterator; public class StackMapTable extends AttributeInfo{ private String originalCode; public StackMapTable(int attrNameIndex, int attrLen) { super(attrNameIndex, attrLen); } public static StackMapTable parse(ByteCodeIterator iter){ int index = iter.nextUNToInt(2); int len = iter.nextUNToInt(4); StackMapTable t = new StackMapTable(index,len); //后面的StackMapTable太过复杂, 不再处理, 只把原始的代码读进来保存 String code = iter.nextUNToHexString(len); t.setOriginalCode(code); return t; } private void setOriginalCode(String code) { this.originalCode = code; } }