| resolveCheckOrGenExpression(Session, RangeGroup, boolean) |   | 28% |   | 15% | 29 | 32 | 56 | 75 | 0 | 1 |
| isComposedOf(Expression[], int, int, OrderedIntHashSet) |  | 0% |  | 0% | 17 | 17 | 29 | 29 | 1 | 1 |
| getSQL() |  | 0% |  | 0% | 13 | 13 | 28 | 28 | 1 | 1 |
| describe(Session, int) |  | 0% |  | 0% | 10 | 10 | 27 | 27 | 1 | 1 |
| isComposedOf(OrderedHashSet, RangeGroup[], OrderedIntHashSet) |  | 0% |  | 0% | 16 | 16 | 25 | 25 | 1 | 1 |
| getValue(Session) |   | 25% |   | 25% | 9 | 11 | 21 | 27 | 0 | 1 |
| getResult(Session) |   | 13% |   | 14% | 4 | 5 | 16 | 19 | 0 | 1 |
| resolveTypes(Session, Expression) |   | 74% |   | 66% | 9 | 18 | 13 | 45 | 0 | 1 |
| resolveGrantFilter(Session, Table) |  | 0% |  | 0% | 6 | 6 | 14 | 14 | 1 | 1 |
| getUnkeyedColumns(OrderedHashSet) |  | 0% |  | 0% | 7 | 7 | 12 | 12 | 1 | 1 |
| setCorrelatedReferences(RangeGroup) |   | 17% |   | 16% | 6 | 7 | 8 | 11 | 0 | 1 |
| resolveColumnReferences(Session, RangeGroup, int, RangeGroup[], List, boolean) |   | 73% |   | 72% | 7 | 16 | 12 | 40 | 0 | 1 |
| replaceExpressions(OrderedHashSet, int) |   | 35% |   | 21% | 7 | 8 | 10 | 16 | 0 | 1 |
| hasNonDeterministicFunction() |  | 0% |  | 0% | 7 | 7 | 12 | 12 | 1 | 1 |
| replaceColumnReferences(Session, RangeVariable, Expression[]) |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 1 | 1 |
| replaceRangeVariables(RangeVariable[], RangeVariable[]) |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 1 | 1 |
| collectRangeVariables(OrderedHashSet) |  | 0% |  | 0% | 5 | 5 | 6 | 6 | 1 | 1 |
| prepareTable(Session, Expression, int) |   | 87% |   | 84% | 6 | 23 | 6 | 45 | 0 | 1 |
| resolveColumnSet(Session, RangeVariable[], int, RangeGroup[], List, List) |   | 11% |   | 25% | 2 | 3 | 5 | 7 | 0 | 1 |
| getContextSQL(Expression) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
| hasReference(RangeVariable[], int) |  | 0% |  | 0% | 4 | 4 | 7 | 7 | 1 | 1 |
| resetColumnReferences() |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| swapLeftAndRightNodes() |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
| materialise(Session) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| isFalse() |  | 0% |  | 0% | 4 | 4 | 2 | 2 | 1 | 1 |
| collectAllExpressions(OrderedHashSet, OrderedIntHashSet, OrderedIntHashSet) |   | 76% |   | 68% | 4 | 9 | 2 | 15 | 0 | 1 |
| equals(Expression) |   | 68% |   | 61% | 5 | 8 | 3 | 11 | 0 | 1 |
| convertToType(Session, Object[], Type[], Type[]) |   | 54% |   | 75% | 1 | 3 | 1 | 4 | 0 | 1 |
| Expression(int, TableDerived) |   | 72% |   | 40% | 3 | 5 | 5 | 18 | 0 | 1 |
| getValueClassName() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getRowValue(Session) |   | 73% |   | 60% | 2 | 4 | 2 | 7 | 0 | 1 |
| getDegree() |   | 61% |   | 60% | 2 | 4 | 2 | 6 | 0 | 1 |
| checkValidCheckConstraint() |   | 56% |   | 25% | 2 | 3 | 1 | 4 | 0 | 1 |
| getConstantValueNoCheck(Session) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| replaceNode(Expression, Expression) |   | 81% |   | 50% | 2 | 3 | 1 | 6 | 0 | 1 |
| duplicate() |   | 87% |   | 75% | 1 | 3 | 2 | 9 | 0 | 1 |
| getNodeDataType(int) |   | 76% |   | 75% | 1 | 3 | 1 | 5 | 0 | 1 |
| equals(Object) |   | 73% |   | 50% | 2 | 3 | 2 | 5 | 0 | 1 |
| setAttributesAsColumn(ColumnSchema) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getSubqueries() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| updateAggregatingValue(Session, SetFunction) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| updateAggregatingValue(Session, SetFunction, SetFunction) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getAggregatedValue(Session, SetFunction) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setCondition(Expression) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setCollation(Collation) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getCheckSelect(Session, Table, Expression) |   | 95% |   | 50% | 1 | 2 | 1 | 15 | 0 | 1 |
| replaceAliasInOrderBy(Session, List, int) |   | 91% |   | 66% | 2 | 4 | 2 | 7 | 0 | 1 |
| isDistinctAggregate() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getColumnName() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNullability() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| equals(Expression[], Expression[]) |  | 95% |   | 87% | 1 | 5 | 1 | 12 | 0 | 1 |
| isIndexable(RangeVariable) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| isDynamicParam() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| isConditionRangeVariable(RangeVariable) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| costFactor(Session, RangeVariable, int) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getIndexableExpression(RangeVariable) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getCondition() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| hasCondition() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| countNulls(Object[]) |  | 94% |   | 75% | 1 | 3 | 1 | 5 | 0 | 1 |
| getLeftNode() |  | 90% |   | 50% | 1 | 2 | 1 | 3 | 0 | 1 |
| getJoinRangeVariables(RangeVariable[], List) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| insertValuesIntoSubqueryTable(Session, PersistentStore) |  | 100% |  | 100% | 0 | 3 | 0 | 9 | 0 | 1 |
| collectAllSubqueries(OrderedHashSet) |  | 100% |   | 90% | 1 | 6 | 0 | 12 | 0 | 1 |
| collectRangeVariables(RangeVariable[], OrderedHashSet) |  | 100% |   | 75% | 2 | 5 | 0 | 6 | 0 | 1 |
| hasReference(RangeVariable) |  | 100% |   | 80% | 2 | 6 | 0 | 7 | 0 | 1 |
| collectObjectNames(Set) |  | 100% |   | 75% | 2 | 5 | 0 | 7 | 0 | 1 |
| hashCode() |  | 100% |   | 75% | 1 | 3 | 0 | 5 | 0 | 1 |
| setNoOptimisation() |  | 100% |   | 75% | 1 | 3 | 0 | 5 | 0 | 1 |
| Expression(int) |  | 100% | | n/a | 0 | 1 | 0 | 8 | 0 | 1 |
| getValue(Session, Type) |  | 100% |  | 100% | 0 | 3 | 0 | 4 | 0 | 1 |
| setDataType(Session, Type) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
| isTrue() |  | 100% |   | 66% | 2 | 4 | 0 | 2 | 0 | 1 |
| equals(Object, Object) |  | 100% |   | 83% | 1 | 4 | 0 | 3 | 0 | 1 |
| getNodeDataTypes() |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| getRightNode() |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| setAsConstantValue(Session, Expression) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| resolveColumnReferences(Session, RangeGroup, RangeGroup[], List) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| setAsConstantValue(Object, Expression) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| getAlias() |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| isCorrelated() |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| resolveColumnSet(Session, RangeVariable[], RangeGroup[], List) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| Expression(int, Expression[]) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| setLeftNode(Expression) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| setRightNode(Expression) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| testCondition(Session) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| setAggregate() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| setAlias(HsqlNameManager.SimpleName) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| setSubType(int) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| hasAggregate() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getSimpleName() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getType() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getSubType() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getColumnIndex() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getDataType() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isSelfAggregate() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getRangeVariable() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getColumn() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isUnresolvedParam() | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |