@@ -103,28 +103,20 @@ public Predicate<T> visitScalarExpr(@NonNull ScalarExpr<T> scalarExpr) {
103103
104104 @ Override
105105 public Predicate <T > visitNullExpr (@ NonNull NullExpr <T > nullExpr ) {
106- switch (nullExpr .getOperator ()) {
107- case IS_NULL :
108- return nullExpr ::isActualValueNull ;
109- case IS_NOT_NULL :
110- return not (nullExpr ::isActualValueNull );
111- default :
112- throw new UnsupportedOperationException ("Unsupported operator in nullability expression: " + nullExpr .getOperator ());
113- }
106+ return switch (nullExpr .getOperator ()) {
107+ case IS_NULL -> nullExpr ::isActualValueNull ;
108+ case IS_NOT_NULL -> not (nullExpr ::isActualValueNull );
109+ };
114110 }
115111
116112 @ Override
117113 public Predicate <T > visitListExpr (@ NonNull ListExpr <T > listExpr ) {
118114 Function <T , Comparable <?>> getActual = listExpr ::getActualValue ;
119115 List <Comparable <?>> expected = listExpr .getExpectedValues ();
120- switch (listExpr .getOperator ()) {
121- case IN :
122- return obj -> expected .contains (getActual .apply (obj ));
123- case NOT_IN :
124- return obj -> !expected .contains (getActual .apply (obj ));
125- default :
126- throw new UnsupportedOperationException ("Unsupported operator in filter expression: " + listExpr .getOperator ());
127- }
116+ return switch (listExpr .getOperator ()) {
117+ case IN -> obj -> expected .contains (getActual .apply (obj ));
118+ case NOT_IN -> obj -> !expected .contains (getActual .apply (obj ));
119+ };
128120 }
129121
130122 @ Override
@@ -148,7 +140,7 @@ public Predicate<T> visitNotExpr(@NonNull NotExpr<T> notExpr) {
148140 });
149141 }
150142
151- public static <T extends Entity < T > > Comparator <T > toComparator (@ NonNull OrderExpression <T > orderBy ) {
143+ public static <T > Comparator <T > toComparator (@ NonNull OrderExpression <T > orderBy ) {
152144 if (orderBy .isUnordered ()) {
153145 // Produces a randomly-ordering, but stable Comparator. UUID.randomUUID() collisions are extremely unlikely, so we ignore them.
154146 Map <Object , UUID > randomIds = new IdentityHashMap <>();
0 commit comments