Class ProgramBlock
- java.lang.Object
- 
- org.apache.sysds.runtime.controlprogram.ProgramBlock
 
- 
- All Implemented Interfaces:
- ParseInfo
 - Direct Known Subclasses:
- BasicProgramBlock,- ForProgramBlock,- FunctionProgramBlock,- IfProgramBlock,- WhileProgramBlock
 
 public abstract class ProgramBlock extends Object implements ParseInfo 
- 
- 
Field SummaryFields Modifier and Type Field Description int_beginColumnint_beginLineint_endColumnint_endLineString_filenameString_textstatic StringPRED_VAR
 - 
Constructor SummaryConstructors Constructor Description ProgramBlock(Program prog)
 - 
Method SummaryAll Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract voidexecute(ExecutionContext ec)Executes this program block (incl recompilation if required).ScalarObjectexecutePredicate(ArrayList<Instruction> inst, Hop hops, boolean requiresRecompile, Types.ValueType retType, ExecutionContext ec)Executes given predicate instructions (incl recompilation if required)intgetBeginColumn()intgetBeginLine()abstract ArrayList<ProgramBlock>getChildBlocks()Get the list of child program blocks if nested; otherwise this method returns null.intgetEndColumn()intgetEndLine()InstructiongetExitInstruction()StringgetFilename()ProgramgetProgram()StatementBlockgetStatementBlock()StringgetText()longgetThreadID()booleanhasThreadID()abstract booleanisNested()Indicates if the program block is nested, i.e., if it contains other program blocks (e.g., loops).static booleanisThreadID(long tid)StringprintBlockErrorLocation()voidsetBeginColumn(int passed)voidsetBeginLine(int passed)voidsetEndColumn(int passed)voidsetEndLine(int passed)voidsetExitInstruction(Instruction rmVar)voidsetFilename(String passed)voidsetParseInfo(ParseInfo parseInfo)Set parse information.voidsetProgram(Program prog)voidsetStatementBlock(StatementBlock sb)voidsetText(String text)voidsetThreadID(long id)
 
- 
- 
- 
Field Detail- 
PRED_VARpublic static final String PRED_VAR - See Also:
- Constant Field Values
 
 - 
_filenamepublic String _filename 
 - 
_beginLinepublic int _beginLine 
 - 
_beginColumnpublic int _beginColumn 
 - 
_endLinepublic int _endLine 
 - 
_endColumnpublic int _endColumn 
 - 
_textpublic String _text 
 
- 
 - 
Constructor Detail- 
ProgramBlockpublic ProgramBlock(Program prog) 
 
- 
 - 
Method Detail- 
getProgrampublic Program getProgram() 
 - 
setProgrampublic void setProgram(Program prog) 
 - 
getStatementBlockpublic StatementBlock getStatementBlock() 
 - 
setStatementBlockpublic void setStatementBlock(StatementBlock sb) 
 - 
setThreadIDpublic void setThreadID(long id) 
 - 
hasThreadIDpublic boolean hasThreadID() 
 - 
isThreadIDpublic static boolean isThreadID(long tid) 
 - 
getThreadIDpublic long getThreadID() 
 - 
setExitInstructionpublic void setExitInstruction(Instruction rmVar) 
 - 
getExitInstructionpublic Instruction getExitInstruction() 
 - 
getChildBlockspublic abstract ArrayList<ProgramBlock> getChildBlocks() Get the list of child program blocks if nested; otherwise this method returns null.- Returns:
- list of program blocks
 
 - 
isNestedpublic abstract boolean isNested() Indicates if the program block is nested, i.e., if it contains other program blocks (e.g., loops).- Returns:
- true if nested
 
 - 
executepublic abstract void execute(ExecutionContext ec) Executes this program block (incl recompilation if required).- Parameters:
- ec- execution context
 
 - 
executePredicatepublic ScalarObject executePredicate(ArrayList<Instruction> inst, Hop hops, boolean requiresRecompile, Types.ValueType retType, ExecutionContext ec) Executes given predicate instructions (incl recompilation if required)- Parameters:
- inst- list of instructions
- hops- high-level operator
- requiresRecompile- true if requires recompile
- retType- value type of the return type
- ec- execution context
- Returns:
- scalar object
 
 - 
setFilenamepublic void setFilename(String passed) - Specified by:
- setFilenamein interface- ParseInfo
 
 - 
setBeginLinepublic void setBeginLine(int passed) - Specified by:
- setBeginLinein interface- ParseInfo
 
 - 
setBeginColumnpublic void setBeginColumn(int passed) - Specified by:
- setBeginColumnin interface- ParseInfo
 
 - 
setEndLinepublic void setEndLine(int passed) - Specified by:
- setEndLinein interface- ParseInfo
 
 - 
setEndColumnpublic void setEndColumn(int passed) - Specified by:
- setEndColumnin interface- ParseInfo
 
 - 
getFilenamepublic String getFilename() - Specified by:
- getFilenamein interface- ParseInfo
 
 - 
getBeginLinepublic int getBeginLine() - Specified by:
- getBeginLinein interface- ParseInfo
 
 - 
getBeginColumnpublic int getBeginColumn() - Specified by:
- getBeginColumnin interface- ParseInfo
 
 - 
getEndLinepublic int getEndLine() - Specified by:
- getEndLinein interface- ParseInfo
 
 - 
getEndColumnpublic int getEndColumn() - Specified by:
- getEndColumnin interface- ParseInfo
 
 - 
printBlockErrorLocationpublic String printBlockErrorLocation() 
 - 
setParseInfopublic void setParseInfo(ParseInfo parseInfo) Set parse information.- Parameters:
- parseInfo- parse information, such as beginning line position, beginning column position, ending line position, ending column position, text, and filename
 
 
- 
 
-