kbendick commented on a change in pull request #2062:
URL: https://github.com/apache/iceberg/pull/2062#discussion_r554903095



##########
File path: 
api/src/main/java/org/apache/iceberg/expressions/InclusiveMetricsEvaluator.java
##########
@@ -372,6 +372,38 @@ public Boolean or(Boolean leftResult, Boolean rightResult) 
{
       return ROWS_MIGHT_MATCH;
     }
 
+    @Override
+    public <T> Boolean notStartsWith(BoundReference<T> ref, Literal<T> lit) {

Review comment:
       `ResidualEvaluator` is a case where we could simply return 
`!startsWith(ref, lit)`. That's actually basically how I defined it (using the 
same ternary expression but swapping the return values on true or false). 
That's because the `ResidualEvaluator` definitions can only return 
`alwaysTrue()` or `alwaysFalse()`. But given that the function body for 
`ResidualEvaluator` is only one line, it's arguable whether or not that's worth 
it as it could bring confusion about which cases can we use `!startsWith` as a 
stand in.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to