Package ghidra.program.model.block
Class SubroutineDestReferenceIterator
java.lang.Object
ghidra.program.model.block.SubroutineDestReferenceIterator
- All Implemented Interfaces:
CodeBlockReferenceIterator
SubroutineDestReferenceIterator is a unidirectional iterator over
the destination
CodeBlockReference
s for a CodeBlock.-
Constructor Summary
ConstructorDescriptionSubroutineDestReferenceIterator
(CodeBlock block, TaskMonitor monitor) Construct an Iterator over Destination blocks for a CodeBlock. -
Method Summary
Modifier and TypeMethodDescriptionstatic int
getNumDestinations
(CodeBlock block, TaskMonitor monitor) Get number of destination references flowing out of this subroutine (block).boolean
hasNext()
Return true if next() will return a CodeBlockReference.next()
Return the next CodeBlockReference.
-
Constructor Details
-
SubroutineDestReferenceIterator
public SubroutineDestReferenceIterator(CodeBlock block, TaskMonitor monitor) throws CancelledException Construct an Iterator over Destination blocks for a CodeBlock. External references will be ignored.- Parameters:
block
- block to get destination blocks for. This should be a subroutine obtained from PartitionCodeSubModel.monitor
- task monitor which allows user to cancel operation.- Throws:
CancelledException
- if the monitor cancels the operation.
-
-
Method Details
-
next
Description copied from interface:CodeBlockReferenceIterator
Return the next CodeBlockReference.- Specified by:
next
in interfaceCodeBlockReferenceIterator
- Throws:
CancelledException
- thrown if the operation is cancelled.- See Also:
-
hasNext
Description copied from interface:CodeBlockReferenceIterator
Return true if next() will return a CodeBlockReference.- Specified by:
hasNext
in interfaceCodeBlockReferenceIterator
- Throws:
CancelledException
- thrown if the operation is cancelled.- See Also:
-
getNumDestinations
public static int getNumDestinations(CodeBlock block, TaskMonitor monitor) throws CancelledException Get number of destination references flowing out of this subroutine (block). All Calls from this block, and all external FlowType block references from this block are counted.- Parameters:
block
- code block to get the number of destination references from.monitor
- task monitor- Throws:
CancelledException
-