package me.lzb.jvm.attr; import me.lzb.jvm.cmd.ByteCodeCommand; /** * Created by LZB on 2017/4/15. */ public class CodeAttr extends AttributeInfo { private int maxStack; private int maxLocals; private int codeLen; private String code; private LineNumberTable lineNumTable; private LocalVariableTable localVarTable; private StackMapTable stackMapTable; private ByteCodeCommand[] cmds; public ByteCodeCommand[] getCmds() { return cmds; } public CodeAttr(int attrNameIndex, int attrLen, int maxStack, int maxLocals, int codeLen, String code, ByteCodeCommand[] cmds) { super(attrNameIndex, attrLen); this.maxStack = maxStack; this.maxLocals = maxLocals; this.codeLen = codeLen; this.code = code; this.cmds = cmds; } public String getCode() { return code; } public LineNumberTable getLineNumTable() { return lineNumTable; } public void setLineNumTable(LineNumberTable lineNumTable) { this.lineNumTable = lineNumTable; } public LocalVariableTable getLocalVarTable() { return localVarTable; } public void setLocalVarTable(LocalVariableTable localVarTable) { this.localVarTable = localVarTable; } public StackMapTable getStackMapTable() { return stackMapTable; } public void setStackMapTable(StackMapTable stackMapTable) { this.stackMapTable = stackMapTable; } }