Package 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
`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
`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

`activatePrefetch, addInput, addOutput, addToDag, createReachable, getAggType, getBeginColumn, getBeginLine, getBroadcastInput, getDataType, getEndColumn, getEndLine, getExecType, getFederatedOutput, 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, prefetchActivated, 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