public class CRTable extends Object implements CRTFlags
This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.
CRT_ASSIGNMENT, CRT_BLOCK, CRT_BRANCH_FALSE, CRT_BRANCH_TRUE, CRT_CREATE, CRT_FLOW_CONTROLLER, CRT_FLOW_TARGET, CRT_INVOKE, CRT_STATEMENT, CRT_VALID_FLAGS
Constructor and Description |
---|
CRTable(JCTree.JCMethodDecl tree,
EndPosTable endPosTable)
Constructor
|
Modifier and Type | Method and Description |
---|---|
int |
length()
Return the number of the entries.
|
void |
put(Object tree,
int flags,
int startPc,
int endPc)
Create a new CRTEntry and add it to the entries.
|
int |
writeCRT(ByteBuffer databuf,
Position.LineMap lineMap,
Log log)
Compute source positions and write CRT to the databuf.
|
public CRTable(JCTree.JCMethodDecl tree, EndPosTable endPosTable)
public void put(Object tree, int flags, int startPc, int endPc)
tree
- The tree or the list of trees for which
we are storing the code pointers.flags
- The set of flags designating type of the entry.startPc
- The starting code position.endPc
- The ending code position.public int writeCRT(ByteBuffer databuf, Position.LineMap lineMap, Log log)
databuf
- The buffer to write bytecodes to.public int length()
Copyright © 2017 earcam. All rights reserved.