Package org.codehaus.groovy.transform.sc.transformers

# Class CompareToNullExpression

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.CompareToNullExpression

All Implemented Interfaces:
  `GroovydocHolder<AnnotatedNode>`, `NodeMetaDataHandler`

public class CompareToNullExpression extends BinaryExpression

- ## 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
  `CompareToNullExpression(Expression expression, boolean equalsNull)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Expression`
  `getObjectExpression()`
  `void`
  `setLeftExpression(Expression expression)`
  Sets the left operand of this binary expression.
  `void`
  `setRightExpression(Expression expression)`
  Sets the right operand of this binary expression.
  `void`
  `setType(ClassNode type)`
  Sets the type information for this expression.
  `Expression`
  `transformExpression(ExpressionTransformer transformer)`
  Transforms this expression and any nested expressions according to the provided transformer.
  `void`
  `visit(GroovyCodeVisitor visitor)`
  Accepts a code visitor for AST traversal and transformation.

  ### Methods inherited from class org.codehaus.groovy.ast.expr.BinaryExpression

  `getLeftExpression, getOperation, getRightExpression, getText, isSafe, newAssignmentExpression, newInitializationExpression, setSafe, toString`

  ### Methods inherited from class org.codehaus.groovy.ast.expr.Expression

  `getType, transformExpressions, transformExpressions`

  ### Methods inherited from class org.codehaus.groovy.ast.AnnotatedNode

  `addAnnotation, 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, newMetaDataMap, putNodeMetaData, removeNodeMetaData, setNodeMetaData`

- ## Constructor Details

  - ### CompareToNullExpression

    public CompareToNullExpression(Expression expression, boolean equalsNull)

- ## Method Details

  - ### getObjectExpression

    public Expression getObjectExpression()

  - ### setLeftExpression

    public void setLeftExpression(Expression expression)
    Description copied from class: `BinaryExpression`
    Sets the left operand of this binary expression.
    Overrides:
      `setLeftExpression` in class `BinaryExpression`
    Parameters:
      `expression` - the new left operand; must not be null

  - ### setRightExpression

    public void setRightExpression(Expression expression)
    Description copied from class: `BinaryExpression`
    Sets the right operand of this binary expression.
    Overrides:
      `setRightExpression` in class `BinaryExpression`
    Parameters:
      `expression` - the new right operand; must not be null

  - ### setType

    public void setType(ClassNode type)
    Description copied from class: `Expression`
    Sets the type information for this expression. Used during type checking and compilation phases to associate a specific type with this expression result.
    Overrides:
      `setType` in class `Expression`
    Parameters:
      `type` - the `ClassNode` representing this expression's type

  - ### transformExpression

    public Expression transformExpression(ExpressionTransformer transformer)
    Description copied from class: `Expression`
    Transforms this expression and any nested expressions according to the provided transformer. This method is called during AST transformation phases and must recursively transform any nested expressions to support full AST tree transformation.
    Overrides:
      `transformExpression` in class `BinaryExpression`
    Parameters:
      `transformer` - the `ExpressionTransformer` to apply
    Returns:
      a transformed copy of this expression (or this expression itself if no changes are needed)

  - ### visit

    public void visit(GroovyCodeVisitor visitor)
    Description copied from class: `ASTNode`
    Accepts a code visitor for AST traversal and transformation. Subclasses must implement this method to support visitor pattern-based processing. The visitor pattern enables decoupling of AST structure from processing logic.
    Overrides:
      `visit` in class `BinaryExpression`
    Parameters:
      `visitor` - the `GroovyCodeVisitor` to process this node