Groovy Documentation

org.codehaus.groovy.transform.sc.transformers
[Java] 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:
org.objectweb.asm.Opcodes

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.

Authors:
Cedric Champeau


Constructor Summary
CompareIdentityExpression(Expression leftExpression, Expression rightExpression)

 
Method Summary
Expression transformExpression(ExpressionTransformer transformer)

void visit(GroovyCodeVisitor visitor)

 
Methods inherited from class BinaryExpression
getLeftExpression, getOperation, getRightExpression, getText, newAssignmentExpression, newInitializationExpression, setLeftExpression, setRightExpression, toString, transformExpression, visit
 
Methods inherited from class Expression
getType, setType, transformExpression, transformExpressions, transformExpressions
 
Methods inherited from class AnnotatedNode
addAnnotation, addAnnotations, getAnnotations, getAnnotations, getDeclaringClass, hasNoRealSourcePosition, isSynthetic, setDeclaringClass, setHasNoRealSourcePosition, setSynthetic
 
Methods inherited from class ASTNode
copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getNodeMetaData, getText, putNodeMetaData, removeNodeMetaData, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setNodeMetaData, setSourcePosition, visit
 
Methods inherited from class java.lang.Object
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Constructor Detail

CompareIdentityExpression

public CompareIdentityExpression(Expression leftExpression, Expression rightExpression)


 
Method Detail

transformExpression

@Override
public Expression transformExpression(ExpressionTransformer transformer)


visit

@Override
public void visit(GroovyCodeVisitor visitor)


 

Groovy Documentation