Class CompareIdentityExpression
- java.lang.Object
-
- org.codehaus.groovy.ast.ASTNode
-
- org.codehaus.groovy.ast.AnnotatedNode
-
- org.codehaus.groovy.ast.expr.Expression
-
- org.codehaus.groovy.ast.expr.BinaryExpression
-
- org.codehaus.groovy.transform.sc.transformers.CompareIdentityExpression
-
- All Implemented Interfaces:
GroovydocHolder<AnnotatedNode>
,NodeMetaDataHandler
public class CompareIdentityExpression extends BinaryExpression
Compares two objects using identity comparison. This expression will generate bytecode using the IF_ACMPNE instruction, instead of using the "equals" method that is currently mapped to "==" in Groovy. This expression should only be used to compare to objects, not primitives, and only in the context of reference equality check.
-
-
Field Summary
-
Fields inherited from class org.codehaus.groovy.ast.expr.Expression
EMPTY_ARRAY
-
Fields inherited from interface groovy.lang.groovydoc.GroovydocHolder
DOC_COMMENT
-
-
Constructor Summary
Constructors Constructor Description CompareIdentityExpression(Expression leftExpression, Expression rightExpression)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Expression
transformExpression(ExpressionTransformer transformer)
Return a copy of the expression calling the transformer on any nested expressionsvoid
visit(GroovyCodeVisitor visitor)
-
Methods inherited from class org.codehaus.groovy.ast.expr.BinaryExpression
getLeftExpression, getOperation, getRightExpression, getText, isSafe, newAssignmentExpression, newInitializationExpression, setLeftExpression, setRightExpression, setSafe, toString
-
Methods inherited from class org.codehaus.groovy.ast.expr.Expression
getType, setType, transformExpressions, transformExpressions
-
Methods inherited from class org.codehaus.groovy.ast.AnnotatedNode
addAnnotation, addAnnotations, getAnnotations, getAnnotations, getDeclaringClass, getGroovydoc, getInstance, hasNoRealSourcePosition, isSynthetic, setDeclaringClass, setHasNoRealSourcePosition, setSynthetic
-
Methods inherited from class org.codehaus.groovy.ast.ASTNode
copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.codehaus.groovy.ast.NodeMetaDataHandler
copyNodeMetaData, getNodeMetaData, getNodeMetaData, getNodeMetaData, putNodeMetaData, removeNodeMetaData, setNodeMetaData
-
-
-
-
Constructor Detail
-
CompareIdentityExpression
public CompareIdentityExpression(Expression leftExpression, Expression rightExpression)
-
-
Method Detail
-
transformExpression
public Expression transformExpression(ExpressionTransformer transformer)
Description copied from class:Expression
Return a copy of the expression calling the transformer on any nested expressions- Overrides:
transformExpression
in classBinaryExpression
-
visit
public void visit(GroovyCodeVisitor visitor)
- Overrides:
visit
in classBinaryExpression
-
-