| 6 | ) |
| 7 | |
| 8 | func Rename(doc document.ComposeDocument, params *protocol.RenameParams) (*protocol.WorkspaceEdit, error) { |
| 9 | highlights, err := DocumentHighlight(doc, params.Position) |
| 10 | if err != nil || len(highlights) == 0 { |
| 11 | return nil, err |
| 12 | } |
| 13 | |
| 14 | edits := []protocol.TextEdit{} |
| 15 | for _, highlight := range highlights { |
| 16 | edits = append(edits, protocol.TextEdit{ |
| 17 | NewText: params.NewName, |
| 18 | Range: highlight.Range, |
| 19 | }) |
| 20 | } |
| 21 | return &protocol.WorkspaceEdit{ |
| 22 | Changes: map[protocol.DocumentUri][]protocol.TextEdit{ |
| 23 | params.TextDocument.URI: edits, |
| 24 | }, |
| 25 | }, nil |
| 26 | } |