| Expression.java |   | 80% |   | 63% | 57 | 135 | 42 | 220 | 12 | 49 | 0 | 1 |
| InPredicate.java |   | 72% |   | 56% | 17 | 53 | 23 | 95 | 1 | 28 | 0 | 1 |
| AggregateExpression.java |   | 43% |   | 25% | 16 | 28 | 24 | 44 | 5 | 14 | 0 | 1 |
| SlotReference.java |   | 77% |   | 62% | 12 | 59 | 9 | 85 | 4 | 43 | 0 | 1 |
| Like.java |   | 45% |   | 28% | 8 | 19 | 10 | 30 | 1 | 12 | 0 | 1 |
| VariableDesc.java |  | 0% |  | 0% | 15 | 15 | 21 | 21 | 9 | 9 | 1 | 1 |
| VirtualSlotReference.java |   | 58% |   | 68% | 12 | 28 | 9 | 39 | 7 | 17 | 0 | 1 |
| ArrayItemReference.java |   | 57% |  | 0% | 13 | 26 | 15 | 38 | 10 | 23 | 0 | 2 |
| TryCast.java |   | 19% |  | 0% | 9 | 14 | 11 | 19 | 7 | 12 | 0 | 1 |
| Properties.java |   | 9% |  | 0% | 13 | 14 | 19 | 22 | 9 | 10 | 0 | 1 |
| WindowFrame.java |   | 82% |   | 56% | 30 | 73 | 16 | 103 | 8 | 39 | 0 | 4 |
| Placeholder.java |  | 0% |  | 0% | 15 | 15 | 24 | 24 | 13 | 13 | 1 | 1 |
| InSubquery.java |   | 55% |   | 31% | 11 | 23 | 8 | 27 | 4 | 15 | 0 | 1 |
| Match.java |   | 27% |  | 0% | 14 | 16 | 13 | 16 | 6 | 8 | 0 | 1 |
| UnaryOperator.java |  | 8% |  | 0% | 8 | 9 | 10 | 13 | 5 | 6 | 0 | 1 |
| Variable.java |   | 50% |   | 18% | 14 | 21 | 14 | 27 | 6 | 13 | 0 | 1 |
| Cast.java |   | 88% |   | 87% | 22 | 98 | 8 | 108 | 5 | 17 | 0 | 1 |
| MarkJoinSlotReference.java |   | 43% |   | 40% | 9 | 15 | 11 | 21 | 5 | 10 | 0 | 1 |
| BinaryArithmetic.java |   | 67% |   | 67% | 10 | 23 | 9 | 37 | 3 | 9 | 0 | 1 |
| WindowExpression.java |   | 91% |   | 81% | 9 | 49 | 1 | 92 | 3 | 33 | 0 | 1 |
| BinaryOperator.java |   | 67% |  | 0% | 3 | 9 | 7 | 16 | 1 | 7 | 0 | 1 |
| CompoundPredicate.java |   | 81% |  | 92% | 4 | 24 | 6 | 40 | 3 | 17 | 0 | 1 |
| TimestampArithmetic.java |   | 85% |   | 55% | 15 | 33 | 7 | 56 | 0 | 14 | 0 | 1 |
| Exists.java |   | 66% |  | 16% | 6 | 16 | 6 | 24 | 3 | 13 | 0 | 1 |
| Between.java |   | 62% |  | 16% | 6 | 14 | 7 | 21 | 3 | 11 | 0 | 1 |
| Divide.java |   | 76% |   | 50% | 9 | 21 | 7 | 38 | 0 | 8 | 0 | 1 |
| BoundStar.java |   | 33% |   | 30% | 7 | 10 | 8 | 14 | 3 | 5 | 0 | 1 |
| Mod.java |   | 18% |  | 0% | 5 | 7 | 8 | 11 | 4 | 6 | 0 | 1 |
| NullSafeEqual.java |   | 49% | | 50% | 5 | 10 | 5 | 14 | 4 | 9 | 0 | 1 |
| AssertNumRowsElement.java |   | 74% |  | 8% | 7 | 14 | 7 | 26 | 1 | 8 | 0 | 2 |
| Slot.java |   | 25% | | n/a | 7 | 10 | 7 | 12 | 7 | 10 | 0 | 1 |
| Multiply.java |   | 77% |   | 50% | 9 | 18 | 6 | 31 | 0 | 5 | 0 | 1 |
| ExpressionEvaluator.java |   | 92% |   | 83% | 10 | 41 | 9 | 101 | 0 | 8 | 0 | 1 |
| MatchPhraseEdge.java |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 4 | 4 | 1 | 1 |
| MatchPhrasePrefix.java |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 4 | 4 | 1 | 1 |
| MatchRegexp.java |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 4 | 4 | 1 | 1 |
| StringRegexPredicate.java |   | 65% | | n/a | 3 | 7 | 3 | 10 | 3 | 7 | 0 | 1 |
| BitNot.java |   | 30% |  | 0% | 5 | 7 | 6 | 9 | 4 | 6 | 0 | 1 |
| IntegralDivide.java |  | 21% |  | 0% | 5 | 6 | 6 | 8 | 4 | 5 | 0 | 1 |
| Regexp.java |  | 23% |  | 0% | 4 | 5 | 5 | 7 | 3 | 4 | 0 | 1 |
| BitXor.java |  | 23% |  | 0% | 4 | 5 | 5 | 7 | 3 | 4 | 0 | 1 |
| MatchAny.java |  | 23% |  | 0% | 4 | 5 | 5 | 7 | 3 | 4 | 0 | 1 |
| BitAnd.java |  | 23% |  | 0% | 4 | 5 | 5 | 7 | 3 | 4 | 0 | 1 |
| MatchPhrase.java |  | 23% |  | 0% | 4 | 5 | 5 | 7 | 3 | 4 | 0 | 1 |
| BitOr.java |  | 23% |  | 0% | 4 | 5 | 5 | 7 | 3 | 4 | 0 | 1 |
| MatchAll.java |  | 23% |  | 0% | 4 | 5 | 5 | 7 | 3 | 4 | 0 | 1 |
| DefaultValueSlot.java |  | 0% | | n/a | 8 | 8 | 9 | 9 | 8 | 8 | 1 | 1 |
| SubqueryExpr.java |   | 90% |   | 68% | 8 | 25 | 3 | 32 | 3 | 17 | 0 | 1 |
| NamedExpression.java |   | 60% | | 50% | 5 | 9 | 4 | 11 | 4 | 8 | 0 | 1 |
| Any.java |   | 48% | | n/a | 5 | 10 | 6 | 12 | 5 | 10 | 0 | 1 |
| SearchExpression.java |   | 91% |   | 66% | 7 | 21 | 4 | 27 | 1 | 12 | 0 | 1 |
| ScalarSubquery.java |   | 95% |   | 85% | 6 | 34 | 1 | 52 | 1 | 17 | 0 | 1 |
| ComparisonPredicate.java |   | 84% |  | 100% | 2 | 10 | 3 | 14 | 2 | 6 | 0 | 1 |
| And.java |   | 89% |   | 80% | 4 | 14 | 2 | 21 | 2 | 9 | 0 | 1 |
| Or.java |   | 89% |   | 80% | 4 | 14 | 2 | 21 | 2 | 9 | 0 | 1 |
| UnaryArithmetic.java |   | 54% | | n/a | 2 | 4 | 2 | 6 | 2 | 4 | 0 | 1 |
| EqualPredicate.java | | 42% | | n/a | 2 | 3 | 3 | 5 | 2 | 3 | 0 | 1 |
| CaseWhen.java |  | 97% |   | 92% | 2 | 27 | 1 | 59 | 0 | 14 | 0 | 1 |
| LessThanEqual.java |  | 93% |   | 66% | 3 | 13 | 2 | 15 | 1 | 10 | 0 | 1 |
| LessThan.java |  | 93% |   | 66% | 3 | 13 | 2 | 15 | 1 | 10 | 0 | 1 |
| GreaterThanEqual.java |  | 93% |   | 66% | 3 | 13 | 2 | 15 | 1 | 10 | 0 | 1 |
| GreaterThan.java |  | 93% |   | 66% | 3 | 13 | 2 | 15 | 1 | 10 | 0 | 1 |
| Alias.java |  | 98% |   | 86% | 4 | 34 | 1 | 47 | 1 | 23 | 0 | 1 |
| OrderExpression.java |  | 95% |   | 60% | 4 | 17 | 2 | 24 | 0 | 12 | 0 | 1 |
| StatementScopeIdGenerator.java |  | 94% |  | 100% | 1 | 13 | 1 | 16 | 1 | 10 | 0 | 1 |
| ExprId.java |  | 93% | | n/a | 1 | 8 | 1 | 9 | 1 | 8 | 0 | 2 |
| Not.java |  | 99% |   | 83% | 2 | 23 | 0 | 30 | 0 | 17 | 0 | 1 |
| WhenClause.java |  | 99% | | 50% | 1 | 14 | 0 | 17 | 0 | 13 | 0 | 1 |
| IsNull.java |  | 98% |  | 75% | 1 | 11 | 0 | 15 | 0 | 9 | 0 | 1 |
| EqualTo.java |  | 98% |   | 66% | 2 | 11 | 0 | 12 | 0 | 8 | 0 | 1 |
| Subtract.java |  | 98% | | 50% | 1 | 6 | 0 | 10 | 0 | 5 | 0 | 1 |
| Add.java |  | 98% | | 50% | 1 | 6 | 0 | 10 | 0 | 5 | 0 | 1 |
| CTEId.java |  | 100% | | n/a | 0 | 6 | 0 | 6 | 0 | 6 | 0 | 2 |