org.apache.sysds.runtime.instructions.spark

## Class SPInstruction

- java.lang.Object
- - org.apache.sysds.runtime.instructions.Instruction
  - - org.apache.sysds.runtime.instructions.spark.SPInstruction

- Direct Known Subclasses:
    BuiltinNarySPInstruction, ComputationSPInstruction, MapmmChainSPInstruction, SpoofSPInstruction, WriteSPInstruction

      public abstract class SPInstruction
      extends Instruction

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `SPInstruction.SPType`

    - ### Nested classes/interfaces inherited from class org.apache.sysds.runtime.instructions.Instruction

      `Instruction.IType`

  - ### Field Summary

    - ### Fields inherited from class org.apache.sysds.runtime.instructions.Instruction

      `DATATYPE_PREFIX, FEDERATED_INST_PREFIX, GPU_INST_PREFIX, INSTRUCTION_DELIM, LITERAL_PREFIX, OPERAND_DELIM, SP_INST_PREFIX, VALUETYPE_PREFIX`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getGraphString()`
    `SPInstruction.SPType` | `getSPInstructionType()`
    `Instruction.IType` | `getType()`
    `void` | `postprocessInstruction(ExecutionContext ec)` This method should be used for any tear down after executing this instruction.
    `Instruction` | `preprocessInstruction(ExecutionContext ec)` This method should be used for any setup before executing this instruction.
    `abstract void` | `processInstruction(ExecutionContext ec)` This method should be used to execute the instruction.
    `boolean` | `requiresLabelUpdate()`

    - ### Methods inherited from class org.apache.sysds.runtime.instructions.Instruction

      `getBeginColumn, getBeginLine, getEndColumn, getEndLine, getExtendedOpcode, getFilename, getInstID, getInstructionString, getLineNum, getOpcode, getOperator, getPrivacyConstraint, printMe, setInstID, setLocation, setLocation, setLocation, setLocation, setPrivacyConstraint, setPrivacyConstraint, toString, updateInstructionThreadID`

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

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### getType

          public Instruction.IType getType()

      Specified by:
        `getType` in class `Instruction`

    - #### getSPInstructionType

          public SPInstruction.SPType getSPInstructionType()

    - #### requiresLabelUpdate

          public boolean requiresLabelUpdate()

      Overrides:
        `requiresLabelUpdate` in class `Instruction`

    - #### getGraphString

          public String getGraphString()

      Overrides:
        `getGraphString` in class `Instruction`

    - #### preprocessInstruction

          public Instruction preprocessInstruction(ExecutionContext ec)

      Description copied from class: `Instruction`
      This method should be used for any setup before executing this instruction. Overwriting methods should first call the super method and subsequently do their custom setup.
      Overrides:
        `preprocessInstruction` in class `Instruction`
      Parameters:
        `ec` - execution context
      Returns:
        instruction

    - #### processInstruction

          public abstract void processInstruction(ExecutionContext ec)

      Description copied from class: `Instruction`
      This method should be used to execute the instruction.
      Specified by:
        `processInstruction` in class `Instruction`
      Parameters:
        `ec` - execution context

    - #### postprocessInstruction

          public void postprocessInstruction(ExecutionContext ec)

      Description copied from class: `Instruction`
      This method should be used for any tear down after executing this instruction. Overwriting methods should first do their custom tear down and subsequently call the super method.
      Overrides:
        `postprocessInstruction` in class `Instruction`
      Parameters:
        `ec` - execution context

Copyright © 2021 The Apache Software Foundation. All rights reserved.