Package ghidra.program.model.lang

# Class InjectPayloadCallother

java.lang.Object
ghidra.program.model.lang.InjectPayloadSleigh
ghidra.program.model.lang.InjectPayloadCallother

All Implemented Interfaces:
  `InjectPayload`

Direct Known Subclasses:
  `InjectPayloadCallotherError`

public class InjectPayloadCallother extends InjectPayloadSleigh

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface ghidra.program.model.lang.InjectPayload

  `InjectPayload.InjectParameter`

- ## Field Summary

  ### Fields inherited from class ghidra.program.model.lang.InjectPayloadSleigh

  `name, source, type`

  ### Fields inherited from interface ghidra.program.model.lang.InjectPayload

  `CALLFIXUP_TYPE, CALLMECHANISM_TYPE, CALLOTHERFIXUP_TYPE, EXECUTABLEPCODE_TYPE`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `InjectPayloadCallother(ConstructTpl pcode, InjectPayloadCallother failedPayload)`
  Constructor for a partial clone of a payload whose p-code failed to parse.
  `protected`
  `InjectPayloadCallother(ConstructTpl pcode, String nm)`
  Constructor for a dummy payload
  ``
  `InjectPayloadCallother(String sourceName)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `encode(Encoder encoder)`
  Encode configuration parameters as a `<pcode>` element to stream
  `void`
  `restoreXml(XmlPullParser parser, SleighLanguage language)`
  Restore the payload from an XML stream.

  ### Methods inherited from class ghidra.program.model.lang.InjectPayloadSleigh

  `getDummyPcode, getInput, getName, getOutput, getParamShift, getPcode, getSource, getType, inject, isEquivalent, isErrorPlaceholder, isFallThru, isIncidentalCopy, orderParameters, setInputParameters, setOutputParameters, setTemplate`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### InjectPayloadCallother

    protected InjectPayloadCallother(ConstructTpl pcode, InjectPayloadCallother failedPayload)
    Constructor for a partial clone of a payload whose p-code failed to parse.
    Parameters:
      `pcode` - is the p-code to substitute
      `failedPayload` - is the failed callfixup

  - ### InjectPayloadCallother

    protected InjectPayloadCallother(ConstructTpl pcode, String nm)
    Constructor for a dummy payload
    Parameters:
      `pcode` - is the dummy p-code to use
      `nm` - is the name of the payload

  - ### InjectPayloadCallother

    public InjectPayloadCallother(String sourceName)

- ## Method Details

  - ### encode

    public void encode(Encoder encoder) throws IOException
    Description copied from interface: `InjectPayload`
    Encode configuration parameters as a `<pcode>` element to stream
    Specified by:
      `encode` in interface `InjectPayload`
    Overrides:
      `encode` in class `InjectPayloadSleigh`
    Parameters:
      `encoder` - is the stream encoder
    Throws:
      `IOException` - for errors writing to the underlying stream

  - ### restoreXml

    public void restoreXml(XmlPullParser parser, SleighLanguage language) throws XmlParseException
    Description copied from interface: `InjectPayload`
    Restore the payload from an XML stream. The root expected document is the `<pcode>` tag, which may be wrapped with another tag by the derived class.
    Specified by:
      `restoreXml` in interface `InjectPayload`
    Overrides:
      `restoreXml` in class `InjectPayloadSleigh`
    Parameters:
      `parser` - is the XML stream
      `language` - is used to resolve registers and address spaces
    Throws:
      `XmlParseException` - for badly formed XML