public class Assignment extends MetaInfo implements UseDef
Consists of defined RangedVariable
target
variable and used value expression.
RangedVariable
Constructor and Description |
---|
Assignment()
Default constructor.
|
Assignment(ru.ispras.fortress.expression.NodeVariable var,
ru.ispras.fortress.expression.Node expr)
Constructs object with the specified target non-ranged variable and value expression.
|
Assignment(RangedVariable target,
ru.ispras.fortress.expression.Node value)
Constructs object with the specified target variable and value expression.
|
Modifier and Type | Method and Description |
---|---|
Assignment |
deepCopy()
Creates a deep copy of the current object.
|
boolean |
equals(java.lang.Object obj) |
java.util.Set<ru.ispras.fortress.expression.NodeVariable> |
getDefines()
Returns a set of defined variables.
|
java.lang.String |
getDescription(ru.ispras.fortress.expression.printer.ExprTreePrinter printer,
java.lang.String separator)
Returns a description of object that is stored in format of the specified printer.
|
RangedVariable |
getTarget()
Returns defined variable.
|
java.util.Set<java.lang.String> |
getUsedVariableNames()
Returns names of variables that are used in this object.
|
java.util.Set<ru.ispras.fortress.expression.NodeVariable> |
getUses()
Returns a set of used variables.
|
ru.ispras.fortress.expression.Node |
getValue()
Returns value expression.
|
int |
hashCode() |
void |
setValue(ru.ispras.fortress.expression.Node value)
Sets new value expression.
|
void |
setVariable(RangedVariable variable)
Sets the specified variable as objects' target.
|
java.lang.String |
toString() |
addMetaInfo, addMetaInfo, addMetaInfo, addMetaInfo, getMetaInfo, getMetaInfo, getMetaInfo, hasMetaInfo, hasMetaInfo, removeMetaInfo
public Assignment()
public Assignment(RangedVariable target, ru.ispras.fortress.expression.Node value)
target
- defined variablevalue
- used expressionjava.lang.IllegalArgumentException
- when any of arguments is null
.public Assignment(ru.ispras.fortress.expression.NodeVariable var, ru.ispras.fortress.expression.Node expr)
var
- defined variableexpr
- used expressionjava.lang.IllegalArgumentException
- when any of arguments is null
.public Assignment deepCopy()
public RangedVariable getTarget()
public void setVariable(RangedVariable variable)
variable
- new target variablejava.lang.IllegalArgumentException
- when argument is null
.public ru.ispras.fortress.expression.Node getValue()
public void setValue(ru.ispras.fortress.expression.Node value)
value
- new value expressionjava.lang.IllegalArgumentException
- when argument is null
.public java.util.Set<java.lang.String> getUsedVariableNames()
public java.lang.String getDescription(ru.ispras.fortress.expression.printer.ExprTreePrinter printer, java.lang.String separator)
printer
- expression printerseparator
- assignment separator between defined and used variablesjava.lang.IllegalArgumentException
- when any of the arguments is null
.public java.util.Set<ru.ispras.fortress.expression.NodeVariable> getUses()
UseDef
public java.util.Set<ru.ispras.fortress.expression.NodeVariable> getDefines()
UseDef
getDefines
in interface UseDef
public java.lang.String toString()
toString
in class java.lang.Object