org.apache.sysds.lops

## Class FunctionCallCP

- java.lang.Object
- - org.apache.sysds.lops.Lop
  - - org.apache.sysds.lops.FunctionCallCP

-     public class FunctionCallCP
      extends Lop

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.sysds.lops.Lop

      `Lop.SimpleInstType, Lop.Type, Lop.VisitStatus`

  - ### Field Summary

    - ### Fields inherited from class org.apache.sysds.lops.Lop

      `_beginColumn, _beginLine, _endColumn, _endLine, _filename, CP_CHILD_THREAD, CP_ROOT_THREAD_ID, DATATYPE_PREFIX, FILE_SEPARATOR, FRAME_VAR_NAME_PREFIX, INSTRUCTION_DELIMITOR, LITERAL_PREFIX, MATRIX_VAR_NAME_PREFIX, NAME_VALUE_SEPARATOR, OPERAND_DELIMITOR, PROCESS_PREFIX, SAMPLE_FRACTION, SCALAR_VAR_NAME_PREFIX, UPDATE_INPLACE_PREFIX, VALUETYPE_PREFIX, VARIABLE_NAME_PLACEHOLDER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FunctionCallCP(ArrayList<Lop> inputs, String fnamespace, String fname, String[] inputNames, String[] outputNames, ArrayList<Hop> outputHops, boolean opt, Types.ExecType et)`
    `FunctionCallCP(ArrayList<Lop> inputs, String fnamespace, String fname, String[] inputNames, String[] outputNames, Types.ExecType et)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ArrayList<Lop>` | `getFunctionOutputs()`
    `String` | `getInstructions(String[] inputs, String[] outputs)` Method to generate instructions for external functions as well as builtin functions with multiple returns.
    `boolean` | `requiresOutputCreateVar()`
    `String` | `toString()` Method to have Lops print their state.

    - ### Methods inherited from class org.apache.sysds.lops.Lop

      `addInput, addOutput, addToDag, createReachable, getAggType, getBeginColumn, getBeginLine, getBroadcastInput, getDataType, getEndColumn, getEndLine, getExecType, getFilename, getID, getInputs, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getLevel, getOutputParameters, getOutputs, getPrivacyConstraint, getProducesIntermediateOutput, getReachable, getSimpleInstructionType, getType, getValueType, getVisited, isAllOutputsCP, isDataExecLocation, isVariable, prepInputOperand, prepInputOperand, prepOperand, prepOperand, prepOutputOperand, prepOutputOperand, prepOutputOperand, prepScalarInputOperand, prepScalarInputOperand, prepScalarLabel, prepScalarOperand, printErrorLocation, removeConsumer, removeOutput, replaceInput, resetVisitStatus, setAllPositions, setBeginColumn, setBeginLine, setConsumerCount, setDataType, setEndColumn, setEndLine, setExecType, setFederatedOutput, setFilename, setPrivacyConstraint, setValueType, setVisited`

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

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

- - ### Constructor Detail

    - #### FunctionCallCP

          public FunctionCallCP(ArrayList<Lop> inputs,
                                String fnamespace,
                                String fname,
                                String[] inputNames,
                                String[] outputNames,
                                ArrayList<Hop> outputHops,
                                boolean opt,
                                Types.ExecType et)

    - #### FunctionCallCP

          public FunctionCallCP(ArrayList<Lop> inputs,
                                String fnamespace,
                                String fname,
                                String[] inputNames,
                                String[] outputNames,
                                Types.ExecType et)

  - ### Method Detail

    - #### getFunctionOutputs

          public ArrayList<Lop> getFunctionOutputs()

    - #### requiresOutputCreateVar

          public boolean requiresOutputCreateVar()

    - #### toString

          public String toString()

      Description copied from class: `Lop`
      Method to have Lops print their state. This is for debugging purposes.
      Specified by:
        `toString` in class `Lop`

    - #### getInstructions

          public String getInstructions(String[] inputs,
                                        String[] outputs)

      Method to generate instructions for external functions as well as builtin functions with multiple returns. Builtin functions have their namespace set to DMLProgram.INTERNAL_NAMESPACE ("_internal").
      Overrides:
        `getInstructions` in class `Lop`
      Parameters:
        `inputs` - array of inputs
        `outputs` - array of outputs
      Returns:
        instructions as string

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