| 1802 | } |
| 1803 | |
| 1804 | static void java_emit_unresolved(JavaLSPContext *ctx, const char *expr_text, const char *reason) { |
| 1805 | if (!ctx->resolved_calls || !ctx->enclosing_method_qn) |
| 1806 | return; |
| 1807 | CBMResolvedCall rc; |
| 1808 | rc.caller_qn = ctx->enclosing_method_qn; |
| 1809 | rc.callee_qn = expr_text ? expr_text : "?"; |
| 1810 | rc.strategy = "lsp_unresolved"; |
| 1811 | rc.confidence = 0.0f; |
| 1812 | rc.reason = reason; |
| 1813 | cbm_resolvedcall_push(ctx->resolved_calls, ctx->arena, rc); |
| 1814 | } |
| 1815 | |
| 1816 | /* Find a sole concrete in-project implementer of interface `iface_qn` that |
| 1817 | * declares method `mname`. Returns the implementer's QN when exactly ONE |
no test coverage detected