public class StatementBlock extends LiveVariableAnalysis implements ParseInfo
Constructor and Description |
---|
StatementBlock() |
StatementBlock(StatementBlock sb) |
getGen, getKill, getWarn, liveIn, liveOut, setGen, setKill, setLiveIn, setLiveOut, setReadVariables, setUpdatedVariables, updateLiveVariablesOut, variablesRead, variablesUpdated
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
ctxAndFilenameToParseInfo
public StatementBlock()
public StatementBlock(StatementBlock sb)
public void setDMLProg(DMLProgram dmlProg)
public DMLProgram getDMLProg()
public long getSBID()
public String getName()
public void addStatement(Statement s)
public void addStatementBlock(StatementBlock s)
public int getNumStatements()
public Statement getStatement(int i)
public boolean mergeable()
public void setSplitDag(boolean flag)
public boolean isSplitDag()
public boolean isMergeableFunctionCallBlock(DMLProgram dmlProg)
public boolean isRewritableFunctionCall(Statement stmt, DMLProgram dmlProg)
public static ArrayList<StatementBlock> mergeFunctionCalls(List<StatementBlock> body, DMLProgram dmlProg)
public ArrayList<DataIdentifier> getOutputsofSB()
public static ArrayList<StatementBlock> mergeStatementBlocks(List<StatementBlock> sb)
public static List<StatementBlock> rHoistFunctionCallsFromExpressions(StatementBlock current, DMLProgram prog)
public static List<Statement> rHoistFunctionCallsFromExpressions(Statement stmt, DMLProgram prog)
public static Expression rHoistFunctionCallsFromExpressions(Expression expr, boolean root, ArrayList<Statement> tmp, DMLProgram prog)
public ArrayList<Statement> rewriteFunctionCallStatements(DMLProgram dmlProg, ArrayList<Statement> statements)
public VariableSet validate(DMLProgram dmlProg, VariableSet ids, HashMap<String,ConstIdentifier> constVars, boolean conditional)
public void setStatementFormatType(OutputStatement s, boolean conditionalValidate)
public void setStatementFormatType(AssignmentStatement s, boolean conditionalValidate)
public VariableSet initializeforwardLV(VariableSet activeIn)
initializeforwardLV
in class LiveVariableAnalysis
public VariableSet initializebackwardLV(VariableSet loPassed)
initializebackwardLV
in class LiveVariableAnalysis
public HashMap<String,ConstIdentifier> getConstIn()
public HashMap<String,ConstIdentifier> getConstOut()
public VariableSet analyze(VariableSet loPassed)
analyze
in class LiveVariableAnalysis
public void raiseValidateError(String msg, boolean conditional)
public void raiseValidateError(String msg, boolean conditional, String errorCode)
public void setFilename(String fname)
setFilename
in interface ParseInfo
public void setBeginLine(int passed)
setBeginLine
in interface ParseInfo
public void setBeginColumn(int passed)
setBeginColumn
in interface ParseInfo
public void setEndLine(int passed)
setEndLine
in interface ParseInfo
public void setEndColumn(int passed)
setEndColumn
in interface ParseInfo
public void setParseInfo(ParseInfo parseInfo)
parseInfo
- parse information, such as beginning line position, beginning
column position, ending line position, ending column position,
text, and filename
the DML filename (if it exists)public String getFilename()
getFilename
in interface ParseInfo
public int getBeginLine()
getBeginLine
in interface ParseInfo
public int getBeginColumn()
getBeginColumn
in interface ParseInfo
public int getEndLine()
getEndLine
in interface ParseInfo
public int getEndColumn()
getEndColumn
in interface ParseInfo
public String printErrorLocation()
public String printBlockErrorLocation()
public String printWarningLocation()
public boolean updateRecompilationFlag()
public boolean requiresRecompilation()
public void setNondeterministic(boolean flag)
public boolean isNondeterministic()
Copyright © 2020 The Apache Software Foundation. All rights reserved.