private void collectParameterValueExpressions ( AbstractExpression expr , List < AbstractExpression > pves ) { if ( expr == null ) { return ; } if ( expr instanceof TupleValueExpression || expr instanceof AggregateExpression ) { // Create a matching PVE for this expression to be used on the EE side // to get the original expression value addCorrelationParameterValueExpression ( expr , pves ) ; return ; } collectParameterValueExpressions ( expr . getLeft ( ) , pves ) ; collectParameterValueExpressions ( expr . getRight ( ) , pves ) ; if ( expr . getArgs ( ) != null ) { for ( AbstractExpression arg : expr . getArgs ( ) ) { collectParameterValueExpressions ( arg , pves ) ; } } }
PVE inside the Row subquery