| appendClauseExplain(TSearchClause, List, int) |  | 0% |  | 0% | 8 | 8 | 14 | 14 | 1 | 1 |
| toThriftOpcode(TimestampArithmeticExpr) |  | 0% |  | 0% | 15 | 15 | 15 | 15 | 1 | 1 |
| visitVariableExpr(VariableExpr, TExprNode) |  | 0% |  | 0% | 5 | 5 | 15 | 15 | 1 | 1 |
| visitMatchPredicate(MatchPredicate, TExprNode) |  | 0% | | n/a | 1 | 1 | 9 | 9 | 1 | 1 |
| visitStructLiteral(StructLiteral, TExprNode) |  | 0% | | n/a | 1 | 1 | 8 | 8 | 1 | 1 |
| toThriftOpcode(MatchPredicate.Operator) |  | 0% |  | 0% | 7 | 7 | 8 | 8 | 1 | 1 |
| toThriftOpcode(ArithmeticExpr.Operator) |   | 24% |   | 18% | 9 | 11 | 9 | 12 | 0 | 1 |
| indent(int) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| buildDslAstExplainLines(SearchPredicate) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| visitMapLiteral(MapLiteral, TExprNode) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| visitCaseExpr(CaseExpr, TExprNode) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| convertQsNodeToThrift(SearchDslParser.QsNode) |   | 77% |   | 66% | 5 | 10 | 3 | 19 | 0 | 1 |
| escapeText(String) |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
| visitInformationFunction(InformationFunction, TExprNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| visitDateLiteral(DateLiteral, TExprNode) |   | 67% |   | 75% | 1 | 3 | 2 | 9 | 0 | 1 |
| toThriftOpcode(BinaryPredicate.Operator) |   | 54% |   | 75% | 2 | 8 | 2 | 9 | 0 | 1 |
| toThriftOpcode(CompoundPredicate.Operator) |   | 39% |   | 50% | 2 | 4 | 2 | 5 | 0 | 1 |
| visit(Expr, TExprNode) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| visitArrayLiteral(ArrayLiteral, TExprNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| visitTryCastExpr(TryCastExpr, TExprNode) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
| convertQsOccurToThrift(SearchDslParser.QsOccur) |  | 0% |  | 0% | 4 | 4 | 5 | 5 | 1 | 1 |
| visitTimeV2Literal(TimeV2Literal, TExprNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| visitJsonLiteral(JsonLiteral, TExprNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| visitIPv4Literal(IPv4Literal, TExprNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| visitIPv6Literal(IPv6Literal, TExprNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| buildSearchThriftParam(SearchPredicate) |   | 94% |   | 75% | 5 | 11 | 2 | 43 | 0 | 1 |
| visitTimestampArithmeticExpr(TimestampArithmeticExpr, TExprNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| visitPlaceHolderExpr(PlaceHolderExpr, TExprNode) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$visitStructLiteral$0(TExprNode, StructField) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| toThriftOpcode(InPredicate) |   | 63% |   | 50% | 2 | 4 | 1 | 4 | 0 | 1 |
| visitLikePredicate(LikePredicate, TExprNode) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| visitBetweenPredicate(BetweenPredicate, TExprNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| visitStringLiteral(StringLiteral, TExprNode) |   | 78% |   | 50% | 1 | 2 | 1 | 5 | 0 | 1 |
| visitFunctionCallExpr(FunctionCallExpr, TExprNode) |   | 92% |   | 75% | 2 | 5 | 1 | 11 | 0 | 1 |
| visitSlotRef(SlotRef, TExprNode) |   | 95% |   | 50% | 1 | 2 | 0 | 6 | 0 | 1 |
| visitMaxLiteral(MaxLiteral, TExprNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| visitEncryptKeyRef(EncryptKeyRef, TExprNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| visitSearchPredicate(SearchPredicate, TExprNode) |  | 99% |   | 64% | 5 | 8 | 0 | 25 | 0 | 1 |
| treeToThriftHelper(Expr, TExpr, ExprVisitor) |  | 100% |  | 100% | 0 | 6 | 0 | 19 | 0 | 1 |
| visitColumnRefExpr(ColumnRefExpr, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| visitBinaryPredicate(BinaryPredicate, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| treesToThrift(List) |  | 100% |  | 100% | 0 | 2 | 0 | 5 | 0 | 1 |
| visitArithmeticExpr(ArithmeticExpr, TExprNode) |  | 100% |  | 100% | 0 | 3 | 0 | 4 | 0 | 1 |
| visitInPredicate(InPredicate, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| visitVarBinaryLiteral(VarBinaryLiteral, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| visitBoolLiteral(BoolLiteral, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| visitIntLiteral(IntLiteral, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| visitLargeIntLiteral(LargeIntLiteral, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| visitFloatLiteral(FloatLiteral, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| visitDecimalLiteral(DecimalLiteral, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| visitCompoundPredicate(CompoundPredicate, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| treeToThrift(Expr) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| visitCastExpr(CastExpr, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| visitLambdaFunctionExpr(LambdaFunctionExpr, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| visitNullLiteral(NullLiteral, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| visitIsNullPredicate(IsNullPredicate, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| visitLambdaFunctionCallExpr(LambdaFunctionCallExpr, TExprNode) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| ExprToThriftVisitor() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |