- org.codehaus.groovy.ast.expr.ElvisOperatorExpression
    
        - 
            
            
 public class ElvisOperatorExpression
extends TernaryExpression  Represents a short ternary expression x ?: y, which is equal to
  
 def truePart = x
 def booleanPart = truePart as boolean
 booleanPart? truePart : y
  Even if x is no atomic expression, x will be evaluated only once. Example:
 class Foo {
   def index=0
   def getX(){ index++; return index }
 }
 def foo = new Foo()
 def result = foo.x ?: "false case"
 assert foo.index == 1
 assert result == 1
 - Since:
- 1.5
 
 
    
        - 
        
        
        
        
        
        
            
        
        
        
        
        
        
        
        
        
        
        
        
            
            - 
                    Methods Summary
- 
                    Inherited Methods Summary
                    
                        Inherited Methods 
                        
                            | Methods inherited from class | Name |  
                            | class TernaryExpression | getBooleanExpression, getFalseExpression, getText, getTrueExpression, getType, toString, transformExpression, visit |  
                            | class Expression | getType, setType, transformExpression, transformExpressions, transformExpressions |  
                            | class AnnotatedNode | addAnnotation, addAnnotation, addAnnotations, getAnnotations, getAnnotations, getDeclaringClass, getGroovydoc, getInstance, hasNoRealSourcePosition, isSynthetic, setDeclaringClass, setHasNoRealSourcePosition, setSynthetic |  
                            | class ASTNode | copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition, visit |  
 
 
 
 
    
    
    Copyright © 2003-2025 The Apache Software Foundation. All rights reserved.