Returns the first expression that yields an empty sequence. If all expressions return non-empty results, the original expression is returned. @return empty or original expression
()
| 165 | * @return empty or original expression |
| 166 | */ |
| 167 | final Expr emptyExpr() { |
| 168 | // pre-evaluate if one value is empty (e.g.: () = local:expensive() ) |
| 169 | for(final Expr expr : exprs) { |
| 170 | if(expr.seqType().zero()) return expr; |
| 171 | } |
| 172 | return this; |
| 173 | } |
| 174 | |
| 175 | /** |
| 176 | * Tries to merge consecutive EBV tests. |