MCPcopy
hub / github.com/wavetermdev/waveterm / ApplyEdits

Function ApplyEdits

pkg/util/fileutil/fileutil.go:297–309  ·  view source on GitHub ↗

ApplyEdits applies a series of edits to the given content and returns the modified content. This is atomic - all edits succeed or all fail.

(originalContent []byte, edits []EditSpec)

Source from the content-addressed store, hash-verified

295// ApplyEdits applies a series of edits to the given content and returns the modified content.
296// This is atomic - all edits succeed or all fail.
297func ApplyEdits(originalContent []byte, edits []EditSpec) ([]byte, error) {
298 modifiedContents := originalContent
299
300 for i, edit := range edits {
301 var result EditResult
302 modifiedContents, result = applyEdit(modifiedContents, edit, i)
303 if !result.Applied {
304 return nil, fmt.Errorf("edit %d (%s): %s", i, result.Desc, result.Error)
305 }
306 }
307
308 return modifiedContents, nil
309}
310
311// ApplyEditsPartial applies edits incrementally, continuing until the first failure.
312// Returns the modified content (potentially partially applied) and results for each edit.

Callers 2

EditTextFileDryRunFunction · 0.92
ReplaceInFileFunction · 0.85

Calls 1

applyEditFunction · 0.85

Tested by

no test coverage detected