Class FunctionProgramBlock
- java.lang.Object
 - 
- org.apache.sysds.runtime.controlprogram.ProgramBlock
 - 
- org.apache.sysds.runtime.controlprogram.FunctionProgramBlock
 
 
 
- 
- All Implemented Interfaces:
 Types.FunctionBlock,ParseInfo
public class FunctionProgramBlock extends ProgramBlock implements Types.FunctionBlock
 
- 
- 
Field Summary
Fields Modifier and Type Field Description String_functionNameString_namespace- 
Fields inherited from class org.apache.sysds.runtime.controlprogram.ProgramBlock
_beginColumn, _beginLine, _endColumn, _endLine, _filename, _text, CHECK_MATRIX_PROPERTIES, PRED_VAR 
 - 
 
- 
Constructor Summary
Constructors Constructor Description FunctionProgramBlock(Program prog, List<DataIdentifier> inputParams, List<DataIdentifier> outputParams) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddProgramBlock(ProgramBlock childBlock)Types.FunctionBlockcloneFunctionBlock()voidexecute(ExecutionContext ec)Executes this program block (incl recompilation if required).ArrayList<ProgramBlock>getChildBlocks()Get the list of child program blocks if nested; otherwise this method returns null.DataIdentifiergetInputParam(String name)List<String>getInputParamNames()ArrayList<DataIdentifier>getInputParams()List<String>getOutputParamNames()ArrayList<DataIdentifier>getOutputParams()booleanisNested()Indicates if the program block is nested, i.e., if it contains other program blocks (e.g., loops).booleanisNondeterministic()booleanisRecompileOnce()StringprintBlockErrorLocation()voidsetChildBlocks(ArrayList<ProgramBlock> pbs)voidsetNondeterministic(boolean flag)voidsetRecompileOnce(boolean flag)- 
Methods inherited from class org.apache.sysds.runtime.controlprogram.ProgramBlock
executePredicate, getBeginColumn, getBeginLine, getEndColumn, getEndLine, getExitInstruction, getFilename, getProgram, getStatementBlock, getText, getThreadID, hasThreadID, isThreadID, setBeginColumn, setBeginLine, setEndColumn, setEndLine, setExitInstruction, setFilename, setParseInfo, setStatementBlock, setText, setThreadID 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
FunctionProgramBlock
public FunctionProgramBlock(Program prog, List<DataIdentifier> inputParams, List<DataIdentifier> outputParams)
 
 - 
 
- 
Method Detail
- 
getInputParam
public DataIdentifier getInputParam(String name)
 
- 
getInputParams
public ArrayList<DataIdentifier> getInputParams()
 
- 
getOutputParams
public ArrayList<DataIdentifier> getOutputParams()
 
- 
addProgramBlock
public void addProgramBlock(ProgramBlock childBlock)
 
- 
setChildBlocks
public void setChildBlocks(ArrayList<ProgramBlock> pbs)
 
- 
getChildBlocks
public ArrayList<ProgramBlock> getChildBlocks()
Description copied from class:ProgramBlockGet the list of child program blocks if nested; otherwise this method returns null.- Specified by:
 getChildBlocksin classProgramBlock- Returns:
 - list of program blocks
 
 
- 
isNested
public boolean isNested()
Description copied from class:ProgramBlockIndicates if the program block is nested, i.e., if it contains other program blocks (e.g., loops).- Specified by:
 isNestedin classProgramBlock- Returns:
 - true if nested
 
 
- 
execute
public void execute(ExecutionContext ec)
Description copied from class:ProgramBlockExecutes this program block (incl recompilation if required).- Specified by:
 executein classProgramBlock- Parameters:
 ec- execution context
 
- 
setRecompileOnce
public void setRecompileOnce(boolean flag)
 
- 
isRecompileOnce
public boolean isRecompileOnce()
 
- 
setNondeterministic
public void setNondeterministic(boolean flag)
 
- 
isNondeterministic
public boolean isNondeterministic()
 
- 
cloneFunctionBlock
public Types.FunctionBlock cloneFunctionBlock()
- Specified by:
 cloneFunctionBlockin interfaceTypes.FunctionBlock
 
- 
printBlockErrorLocation
public String printBlockErrorLocation()
- Overrides:
 printBlockErrorLocationin classProgramBlock
 
 - 
 
 -