Package org.openjdk.asmtools.jasm
Class CodeAttr
- java.lang.Object
-
- org.openjdk.asmtools.jasm.AttrData
-
- org.openjdk.asmtools.jasm.CodeAttr
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCodeAttr.Label(package private) classCodeAttr.LineNumDatastatic classCodeAttr.Local(package private) classCodeAttr.LocVarData(package private) classCodeAttr.Trap(package private) classCodeAttr.TrapData
-
Field Summary
Fields Modifier and Type Field Description protected DataVector<DataVectorAttr<? extends Data>>attrsprotected ClassDataclsprotected intcur_pcprotected StackMapDatacurMapEntryprotected Environmentenvprotected java.util.HashMap<java.lang.String,CodeAttr.Label>labelsHashprotected InstrlastInstrprotected intlastlnprotected DataVectorAttr<CodeAttr.LineNumData>lin_num_tbprotected DataVectorAttr<CodeAttr.LocVarData>loc_var_tbprotected java.util.HashMap<java.lang.String,CodeAttr.LocVarData>locvarsHashprotected Argumentmax_localsprotected Argumentmax_stackprotected MethodDatamtdprotected java.util.ArrayList<java.lang.Integer>slotsprotected DataVectorAttr<StackMapData>stackMapprotected DataVector<CodeAttr.TrapData>trap_tableprotected java.util.HashMap<java.lang.String,CodeAttr.Trap>trapsHashprotected DataVectorAttr<TypeAnnotationData>type_annotAttrInvprotected DataVectorAttr<TypeAnnotationData>type_annotAttrVisprotected InstrzeroInstr
-
Constructor Summary
Constructors Constructor Description CodeAttr(MethodData mtd, int pos, int paramcnt, Argument max_stack, Argument max_locals)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAnnotations(java.util.ArrayList<AnnotationData> list)(package private) voidaddInstr(int mnenoc_pos, OpcodeTables.Opcode opcode, Argument arg, java.lang.Object arg2)intattrLength()(package private) voidbeginTrap(int pos, java.lang.String name)(package private) voidcheckLabels()(package private) voidcheckLocVars()(package private) voidcheckTraps()(package private) voidendCode()(package private) voidendTrap(int pos, java.lang.String name)StackMapDatagetStackMap()(package private) CodeAttr.LabellabelDecl(java.lang.String name)CodeAttr.LabelLabelDef(int pos, java.lang.String name)CodeAttr.LabelLabelRef(java.lang.String name)voidLocVarDataDef(int slot)voidLocVarDataDef(java.lang.String name, ConstantPool.ConstCell type)voidLocVarDataEnd(int slot)voidLocVarDataEnd(java.lang.String name)ArgumentLocVarDataRef(java.lang.String name)(package private) CodeAttr.LocVarDatalocvarDecl(java.lang.String name)(package private) CodeAttr.TraptrapDecl(int pos, java.lang.String name)(package private) voidtrapHandler(int pos, java.lang.String name, Argument type)voidwrite(CheckedDataOutputStream out)-
Methods inherited from class org.openjdk.asmtools.jasm.AttrData
getClassData, getLength
-
-
-
-
Field Detail
-
cls
protected ClassData cls
-
mtd
protected MethodData mtd
-
env
protected Environment env
-
max_stack
protected Argument max_stack
-
max_locals
protected Argument max_locals
-
zeroInstr
protected Instr zeroInstr
-
lastInstr
protected Instr lastInstr
-
cur_pc
protected int cur_pc
-
trap_table
protected DataVector<CodeAttr.TrapData> trap_table
-
lin_num_tb
protected DataVectorAttr<CodeAttr.LineNumData> lin_num_tb
-
lastln
protected int lastln
-
loc_var_tb
protected DataVectorAttr<CodeAttr.LocVarData> loc_var_tb
-
attrs
protected DataVector<DataVectorAttr<? extends Data>> attrs
-
slots
protected java.util.ArrayList<java.lang.Integer> slots
-
locvarsHash
protected java.util.HashMap<java.lang.String,CodeAttr.LocVarData> locvarsHash
-
labelsHash
protected java.util.HashMap<java.lang.String,CodeAttr.Label> labelsHash
-
trapsHash
protected java.util.HashMap<java.lang.String,CodeAttr.Trap> trapsHash
-
curMapEntry
protected StackMapData curMapEntry
-
stackMap
protected DataVectorAttr<StackMapData> stackMap
-
type_annotAttrVis
protected DataVectorAttr<TypeAnnotationData> type_annotAttrVis
-
type_annotAttrInv
protected DataVectorAttr<TypeAnnotationData> type_annotAttrInv
-
-
Constructor Detail
-
CodeAttr
public CodeAttr(MethodData mtd, int pos, int paramcnt, Argument max_stack, Argument max_locals)
-
-
Method Detail
-
endCode
void endCode()
-
addAnnotations
public void addAnnotations(java.util.ArrayList<AnnotationData> list)
-
trapDecl
CodeAttr.Trap trapDecl(int pos, java.lang.String name)
-
beginTrap
void beginTrap(int pos, java.lang.String name)
-
endTrap
void endTrap(int pos, java.lang.String name)
-
trapHandler
void trapHandler(int pos, java.lang.String name, Argument type)
-
checkTraps
void checkTraps()
-
labelDecl
CodeAttr.Label labelDecl(java.lang.String name)
-
LabelDef
public CodeAttr.Label LabelDef(int pos, java.lang.String name)
-
LabelRef
public CodeAttr.Label LabelRef(java.lang.String name)
-
checkLabels
void checkLabels()
-
locvarDecl
CodeAttr.LocVarData locvarDecl(java.lang.String name)
-
LocVarDataDef
public void LocVarDataDef(int slot)
-
LocVarDataDef
public void LocVarDataDef(java.lang.String name, ConstantPool.ConstCell type)
-
LocVarDataRef
public Argument LocVarDataRef(java.lang.String name)
-
LocVarDataEnd
public void LocVarDataEnd(int slot)
-
LocVarDataEnd
public void LocVarDataEnd(java.lang.String name)
-
checkLocVars
void checkLocVars()
-
getStackMap
public StackMapData getStackMap()
-
addInstr
void addInstr(int mnenoc_pos, OpcodeTables.Opcode opcode, Argument arg, java.lang.Object arg2)
-
attrLength
public int attrLength()
- Overrides:
attrLengthin classAttrData
-
write
public void write(CheckedDataOutputStream out) throws java.io.IOException, Parser.CompilerError
- Specified by:
writein interfaceData- Overrides:
writein classAttrData- Throws:
java.io.IOExceptionParser.CompilerError
-
-