| 801 | } |
| 802 | |
| 803 | std::any ParserVisitor::visitMemberExpr(CelParser::MemberExprContext* mctx) { |
| 804 | CelParser::MemberContext* member = mctx->member(); |
| 805 | if (auto* ctx = tree_as<CelParser::PrimaryExprContext>(member)) { |
| 806 | return visitPrimaryExpr(ctx); |
| 807 | } else if (auto* ctx = tree_as<CelParser::SelectContext>(member)) { |
| 808 | return visitSelect(ctx); |
| 809 | } else if (auto* ctx = tree_as<CelParser::MemberCallContext>(member)) { |
| 810 | return visitMemberCall(ctx); |
| 811 | } else if (auto* ctx = tree_as<CelParser::IndexContext>(member)) { |
| 812 | return visitIndex(ctx); |
| 813 | } |
| 814 | return ExprToAny(factory_.ReportError(SourceRangeFromParserRuleContext(mctx), |
| 815 | "unsupported simple expression")); |
| 816 | } |
| 817 | |
| 818 | std::any ParserVisitor::visitStart(CelParser::StartContext* ctx) { |
| 819 | return visit(ctx->expr()); |
nothing calls this directly
no test coverage detected