package com.coderising.jvm.attribute;
import com.coderising.jvm.clasfile.ClassFile;
import com.coderising.jvm.loader.ByteCodeIterator;
public class StackMapTable extends AttributeInfo{
private String originCode;
public String getOriginCode() {
return originCode;
}
public void setOriginCode(String originCode) {
this.originCode = originCode;
}
public StackMapTable(int attrNameIndex, int attrLen) {
super(attrNameIndex, attrLen);
}
public static StackMapTable parse(ClassFile classFile,
ByteCodeIterator iterator) {
iterator.back(2);
int attName_index = iterator.next2BytesToInt();
int attr_len = iterator.next4BytesToInt();
StackMapTable stackMapTable = new StackMapTable(attName_index, attr_len);
String codeString = iterator.nextXBytesToString(attr_len);
stackMapTable.setOriginCode(codeString);
return stackMapTable;
}
}