Class BinaryOperator
java.lang.Object
de.fraunhofer.aisec.cpg.graph.Node
de.fraunhofer.aisec.cpg.graph.statements.Statement
de.fraunhofer.aisec.cpg.graph.statements.expressions.Expression
de.fraunhofer.aisec.cpg.graph.statements.expressions.BinaryOperator
- All Implemented Interfaces:
DeclarationHolder,HasType,HasType.TypeListener,Persistable,IVisitable<de.fraunhofer.aisec.cpg.graph.Node>
public class BinaryOperator extends Expression implements HasType.TypeListener
A binary operation expression, such as "a + b". It consists of a left hand expression (lhs), a
right hand expression (rhs) and an operatorCode.
-
Nested Class Summary
Nested classes/interfaces inherited from class de.fraunhofer.aisec.cpg.graph.Node
de.fraunhofer.aisec.cpg.graph.Node.CompanionNested classes/interfaces inherited from interface de.fraunhofer.aisec.cpg.graph.HasType
HasType.SecondaryTypeEdge, HasType.TypeListener -
Field Summary
Fields inherited from class de.fraunhofer.aisec.cpg.graph.statements.expressions.Expression
typeFields inherited from class de.fraunhofer.aisec.cpg.graph.Node
Companion, EMPTY_NAME, TO_STRING_STYLE -
Constructor Summary
Constructors Constructor Description BinaryOperator() -
Method Summary
Modifier and Type Method Description booleanequals(java.lang.Object o)ExpressiongetLhs()<T extends Expression>
TgetLhsAs(java.lang.Class<T> clazz)java.lang.StringgetOperatorCode()ExpressiongetRhs()<T extends Expression>
TgetRhsAs(java.lang.Class<T> clazz)inthashCode()voidpossibleSubTypesChanged(HasType src, HasType root, java.util.Set<Type> oldSubTypes)voidsetLhs(Expression lhs)voidsetOperatorCode(java.lang.String operatorCode)voidsetRhs(Expression rhs)java.lang.StringtoString()voidtypeChanged(HasType src, HasType root, Type oldType)Methods inherited from class de.fraunhofer.aisec.cpg.graph.statements.expressions.Expression
getPossibleSubTypes, getPropagationType, getType, getTypeListeners, refreshType, registerTypeListener, resetTypes, setPossibleSubTypes, setType, unregisterTypeListener, updatePossibleSubtypes, updateTypeMethods inherited from class de.fraunhofer.aisec.cpg.graph.statements.Statement
addDeclaration, getDeclarations, getLocals, getLocalsPropertyEdge, removeLocal, setLocalsMethods inherited from class de.fraunhofer.aisec.cpg.graph.Node
addAnnotations, addNextDFG, addNextEOG, addPrevDFG, addPrevEOG, addTypedef, clearNextEOG, disconnectFromGraph, getAnnotations, getArgumentIndex, getAstChildren, getCode, getComment, getFile, getId, getLocation, getName, getNextDFG, getNextEOG, getNextEOGEdges, getPrevDFG, getPrevEOG, getPrevEOGEdges, getTypedefs, isImplicit, isInferred, removeNextDFG, removePrevDFG, removePrevEOGEntry, setAnnotations, setArgumentIndex, setCode, setComment, setFile, setId, setImplicit, setInferred, setLocation, setName, setNextDFG, setNextEOG, setNextEOGEdges, setPrevDFG, setPrevEOG, setPrevEOGEdges, setTypedefsMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface de.fraunhofer.aisec.cpg.graph.DeclarationHolder
addIfNotContains, addIfNotContains, addIfNotContainsMethods inherited from interface de.fraunhofer.aisec.cpg.graph.HasType
setPossibleSubTypes, setTypeMethods inherited from interface de.fraunhofer.aisec.cpg.processing.IVisitable
accept
-
Constructor Details
-
BinaryOperator
public BinaryOperator()
-
-
Method Details
-
getLhs
-
getLhsAs
-
setLhs
-
getRhs
-
getRhsAs
-
setRhs
-
getOperatorCode
public java.lang.String getOperatorCode() -
setOperatorCode
public void setOperatorCode(java.lang.String operatorCode) -
typeChanged
- Specified by:
typeChangedin interfaceHasType.TypeListener
-
possibleSubTypesChanged
- Specified by:
possibleSubTypesChangedin interfaceHasType.TypeListener
-
toString
public java.lang.String toString()- Overrides:
toStringin classExpression
-
equals
public boolean equals(java.lang.Object o)- Overrides:
equalsin classExpression
-
hashCode
public int hashCode()- Overrides:
hashCodein classExpression
-