Class 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
  • Field Details

  • Constructor Details

    • BlockMultiGoto

      public BlockMultiGoto()
  • Method Details

    • addGotoTarget

      public void addGotoTarget(PcodeBlock target)
    • encodeBody

      protected void encodeBody(Encoder encoder) throws IOException
      Description copied from class: PcodeBlock
      Encode information about the block to stream, other than header and edge info
      Overrides:
      encodeBody in class BlockGraph
      Parameters:
      encoder - is the stream encoder
      Throws:
      IOException - for errors writing to the underlying stream
    • decodeBody

      protected void decodeBody(Decoder decoder, BlockMap resolver) throws DecoderException
      Description copied from class: PcodeBlock
      Restore the any additional information beyond header and edges from stream
      Overrides:
      decodeBody in class BlockGraph
      Parameters:
      decoder - is the stream decoder
      resolver - is for looking up edge references
      Throws:
      DecoderException - for invalid encoding