Package org.apache.groovy.ginq.dsl.expression

# Class SetOperationExpression

java.lang.Object
org.codehaus.groovy.ast.ASTNode
org.codehaus.groovy.ast.AnnotatedNode
org.codehaus.groovy.ast.expr.Expression
org.apache.groovy.ginq.dsl.expression.AbstractGinqExpression
org.apache.groovy.ginq.dsl.expression.SetOperationExpression

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

public class SetOperationExpression extends AbstractGinqExpression
Represents a set operation (union, unionall, intersect, minus) combining two GINQ expressions.

Since:
  6.0.0

- ## 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
  `SetOperationExpression(AbstractGinqExpression left, String operation, GinqExpression right)`
  Creates a set-operation expression.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `<R> R`
  `accept(GinqAstVisitor<R> visitor)`
  Accepts a visitor for this expression.
  `AbstractGinqExpression`
  `getLeft()`
  Returns the left query.
  `String`
  `getOperation()`
  Returns the operation name.
  `GinqExpression`
  `getRight()`
  Returns the right query.
  `String`
  `getText()`
  Returns the textual GINQ form of this expression.
  `String`
  `toString()`
  Returns the textual form of this expression.

  ### Methods inherited from class org.apache.groovy.ginq.dsl.expression.AbstractGinqExpression

  `transformExpression, visit`

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

  `getType, setType, 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, getMetaDataMap, getNodeMetaData, getNodeMetaData, getNodeMetaData, newMetaDataMap, putNodeMetaData, removeNodeMetaData, setMetaDataMap, setNodeMetaData`

- ## Constructor Details

  - ### SetOperationExpression

    public SetOperationExpression(AbstractGinqExpression left, String operation, GinqExpression right)
    Creates a set-operation expression.
    Parameters:
      `left` - the left query
      `operation` - the set-operation name
      `right` - the right query

- ## Method Details

  - ### getLeft

    public AbstractGinqExpression getLeft()
    Returns the left query.
    Returns:
      the left query

  - ### getOperation

    public String getOperation()
    Returns the operation name.
    Returns:
      the operation name

  - ### getRight

    public GinqExpression getRight()
    Returns the right query.
    Returns:
      the right query

  - ### accept

    public <R> R accept(GinqAstVisitor<R> visitor)
    Accepts a visitor for this expression.
    Specified by:
      `accept` in class `AbstractGinqExpression`
    Type Parameters:
      `R` - the visit result type
    Parameters:
      `visitor` - the visitor to accept
    Returns:
      the visit result

  - ### getText

    public String getText()
    Returns the textual GINQ form of this expression.
    Overrides:
      `getText` in class `ASTNode`
    Returns:
      the expression text

  - ### toString

    public String toString()
    Returns the textual form of this expression.
    Overrides:
      `toString` in class `Object`
    Returns:
      the expression text