| visitCall(RexCall) |  | 0% |  | 0% | 22 | 22 | 40 | 40 | 1 | 1 |
| compareExtract(SqlKind, RexNode, RexLiteral) |  | 0% |  | 0% | 12 | 12 | 29 | 29 | 1 | 1 |
| visitList(List, boolean[]) |  | 0% |  | 0% | 8 | 8 | 22 | 22 | 1 | 1 |
| toRex(RexNode, Range) |  | 0% |  | 0% | 5 | 5 | 16 | 16 | 1 | 1 |
| dateTimeLiteral(RexBuilder, Calendar, RexNode) |  | 0% |  | 0% | 5 | 5 | 19 | 19 | 1 | 1 |
| timestampValue(RexLiteral) |  | 0% |  | 0% | 5 | 5 | 16 | 16 | 1 | 1 |
| compareFloorCeil(SqlKind, RexNode, RexLiteral, TimeUnitRange, boolean) |  | 0% |  | 0% | 4 | 4 | 14 | 14 | 1 | 1 |
| floorRange(TimeUnitRange, SqlKind, Calendar) |  | 0% |  | 0% | 9 | 9 | 9 | 9 | 1 | 1 |
| ceilRange(TimeUnitRange, SqlKind, Calendar) |  | 0% |  | 0% | 9 | 9 | 9 | 9 | 1 | 1 |
| isValid(int, TimeUnitRange) |  | 0% |  | 0% | 15 | 15 | 7 | 7 | 1 | 1 |
| next(Calendar, TimeUnitRange, int, Range, boolean) |  | 0% |  | 0% | 5 | 5 | 14 | 14 | 1 | 1 |
| extractRange(TimeUnitRange, SqlKind, Calendar) |  | 0% |  | 0% | 6 | 6 | 8 | 8 | 1 | 1 |
| floor(Calendar, TimeUnitRange) |  | 0% |  | 0% | 7 | 7 | 10 | 10 | 1 | 1 |
| canRewriteExtract(RexNode) |  | 0% |  | 0% | 7 | 7 | 10 | 10 | 1 | 1 |
| DateRangeRules.ExtractShuttle(RexBuilder, TimeUnitRange, Map, ImmutableSortedSet, String) |  | 0% | | n/a | 1 | 1 | 8 | 8 | 1 | 1 |
| isExtractCall(RexNode) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| round(Calendar, TimeUnitRange, boolean) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| isFloorCeilCall(RexNode) |  | 0% |  | 0% | 3 | 3 | 4 | 4 | 1 | 1 |
| ceil(Calendar, TimeUnitRange) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| increment(Calendar, TimeUnitRange) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| decrement(Calendar, TimeUnitRange) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| lambda$next$2(TimeUnitRange) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$visitCall$1(RexCall) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$visitCall$0(RexCall) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| static {...} |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |