Package ghidra.program.model.pcode
Class BlockMultiGoto
- java.lang.Object
-
- ghidra.program.model.pcode.PcodeBlock
-
- ghidra.program.model.pcode.BlockGraph
-
- ghidra.program.model.pcode.BlockMultiGoto
-
public class BlockMultiGoto extends BlockGraph
A block representing a 2-or-more control flow branchpoint possible multiple incoming edges 1 or more outgoing edges (as in switch control flow) 2 or more (implied) outgoing edges representing unstructured branch destinations (switch case with goto statement) 1 interior block representing the decision block of the switch
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ghidra.program.model.pcode.PcodeBlock
PcodeBlock.BlockEdge
-
-
Constructor Summary
Constructors Constructor Description BlockMultiGoto()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addGotoTarget(PcodeBlock target)
void
restoreXmlBody(XmlPullParser parser, BlockMap resolver)
Restore the any additional information beyond header and edges from XMLvoid
saveXmlBody(java.io.Writer writer)
Serialize information about the block to XML, other than header and edge info-
Methods inherited from class ghidra.program.model.pcode.BlockGraph
addBlock, addEdge, getBlock, getSize, restoreXml, setIndices, transferObjectRef
-
Methods inherited from class ghidra.program.model.pcode.PcodeBlock
addInEdge, calcDepth, getFalseOut, getFrontLeaf, getIn, getIndex, getInRevIndex, getInSize, getOut, getOutRevIndex, getOutSize, getParent, getStart, getStop, getTrueOut, getType, nameToType, restoreNextInEdge, restoreNextInEdge, restoreXml, restoreXmlEdges, restoreXmlHeader, saveXml, saveXmlEdges, saveXmlHeader, setIndex, toString, typeToName
-
-
-
-
Field Detail
-
targets
protected java.util.ArrayList<PcodeBlock> targets
-
-
Method Detail
-
addGotoTarget
public void addGotoTarget(PcodeBlock target)
-
saveXmlBody
public void saveXmlBody(java.io.Writer writer) throws java.io.IOException
Description copied from class:PcodeBlock
Serialize information about the block to XML, other than header and edge info- Overrides:
saveXmlBody
in classBlockGraph
- Parameters:
writer
- is where to serialize to- Throws:
java.io.IOException
- if there is a problem with the stream
-
restoreXmlBody
public void restoreXmlBody(XmlPullParser parser, BlockMap resolver) throws PcodeXMLException
Description copied from class:PcodeBlock
Restore the any additional information beyond header and edges from XML- Overrides:
restoreXmlBody
in classBlockGraph
- Parameters:
parser
- is the XML parserresolver
- is for looking up edge references- Throws:
PcodeXMLException
- for invalid XML descriptions
-
-