(raw: string)
| 1130 | * reject obvious non-types. |
| 1131 | */ |
| 1132 | export function normalizeInferredTypeName(raw: string): string | null { |
| 1133 | const cleaned = raw.replace(/<[^>]*>/g, '').replace(/[&*]/g, '').trim(); |
| 1134 | const seg = cleaned.split(/[.:]+/).filter(Boolean).pop(); |
| 1135 | if (!seg) return null; |
| 1136 | if (NON_TYPE_RECEIVER_TOKENS.has(seg)) return null; |
| 1137 | return seg; |
| 1138 | } |
| 1139 | |
| 1140 | /** |
| 1141 | * Per-language patterns that recover a local variable's (or typed parameter's) |
no test coverage detected