public interface TreeModelVisitor<T>
Modifier and Type | Interface and Description |
---|---|
static interface |
TreeModelVisitor.IMergePoint<T>
IMergePoint models a point where several predecessors'
values combine in the dataflow graph.
|
Modifier and Type | Method and Description |
---|---|
T |
addMergePoint(IBasicBlock toInit)
Add a merge node, where values from several blocks
combine in the dataflow graph.
|
T |
scopeStackUnderflow(Instruction insn,
int count)
Recover from a scope stack underflow condition.
|
T |
translate(Instruction insn,
Collection<T> operands)
Translate an Instruction and its operands into
an intermediate form.
|
T |
translateBranch(Instruction insn,
Collection<IBasicBlock> targets)
Translate a branch Instruction and its targets into
an intermediate form.
|
T |
translateExceptionVariable(Name varName,
Name varType)
Get a representation of an exception variable.
|
T |
translateParameter(int paramNumber)
Get a representation of a function actual parameter.
|
T |
valueStackUnderflow(Instruction insn,
int count)
Recover from a value stack underflow condition.
|
void |
visit(TreeModelEncoder<T> model)
Begin visiting a method's frames.
|
boolean |
visitBlock(IBasicBlock b)
Begin a visit to a block.
|
void |
visitEnd()
Finish visiting a method and its frames.
|
void |
visitEnd(IBasicBlock b)
Finish visiting a block.
|
void visit(TreeModelEncoder<T> model)
model
- - the TreeModelEncoder that's
driving the visitor.void visitEnd()
boolean visitBlock(IBasicBlock b)
b
- the IBasicBlock to be visited.void visitEnd(IBasicBlock b)
b
- the last IBasicBlock to be confirmed to-be-visited by visitBlock().T translate(Instruction insn, Collection<T> operands)
insn
- - the Instruction that encoded this operation.operands
- - the Instruction's operands, usually from
the ABC value stack.T translateBranch(Instruction insn, Collection<IBasicBlock> targets)
insn
- - the Instruction that encoded this operation.targets
- - the Instruction's targets.T valueStackUnderflow(Instruction insn, int count)
insn
- - the Instruction that attempted to encode
this operation.count
- - the number of stack values required.T scopeStackUnderflow(Instruction insn, int count)
insn
- - the Instruction that attempted to encode
this operation.count
- - the number of scope stack values required.T translateParameter(int paramNumber)
paramNumber
- - the parameter number.T translateExceptionVariable(Name varName, Name varType)
varName
- the exception variable's name.varType
- the exception variable's type.T addMergePoint(IBasicBlock toInit)
toInit
- - the Block where these values combine.Copyright © 2016 The Apache Software Foundation. All rights reserved.