(content, startMarker, endMarker, newContent string)
| 340 | } |
| 341 | |
| 342 | func replaceSection(content, startMarker, endMarker, newContent string) (string, error) { |
| 343 | start := fmt.Sprintf("<!-- %s -->", startMarker) |
| 344 | end := fmt.Sprintf("<!-- %s -->", endMarker) |
| 345 | |
| 346 | before, _, ok := strings.Cut(content, start) |
| 347 | endIdx := strings.Index(content, end) |
| 348 | if !ok || endIdx == -1 { |
| 349 | return "", fmt.Errorf("markers not found: %s / %s", start, end) |
| 350 | } |
| 351 | |
| 352 | var buf strings.Builder |
| 353 | buf.WriteString(before) |
| 354 | buf.WriteString(start) |
| 355 | buf.WriteString("\n") |
| 356 | buf.WriteString(newContent) |
| 357 | buf.WriteString("\n") |
| 358 | buf.WriteString(content[endIdx:]) |
| 359 | return buf.String(), nil |
| 360 | } |
| 361 | |
| 362 | func generateRemoteToolsetsDoc() string { |
| 363 | var buf strings.Builder |
no test coverage detected