Class RenameWorkspaceEditBuilder
WorkspaceEdit для переименования символа.
Инкапсулирует выбор формата результата по заявленным клиентом возможностям
workspace.workspaceEdit: построение documentChanges
(TextDocumentEdit с версионированным идентификатором документа), оборачивание
правок в AnnotatedTextEdit со связыванием с ChangeAnnotation либо понижение
результата до legacy changes-map для обратной совместимости.
-
Constructor Summary
ConstructorsConstructorDescriptionRenameWorkspaceEditBuilder(Resources resources, ClientCapabilitiesHolder clientCapabilitiesHolder) -
Method Summary
Modifier and TypeMethodDescriptionПостроитьWorkspaceEditс правками переименования символа.voidОбработчик событияLanguageServerInitializeRequestReceivedEvent.
-
Constructor Details
-
RenameWorkspaceEditBuilder
@ConstructorProperties({"resources","clientCapabilitiesHolder"}) public RenameWorkspaceEditBuilder(Resources resources, ClientCapabilitiesHolder clientCapabilitiesHolder)
-
-
Method Details
-
handleInitializeEvent
@EventListener(LanguageServerInitializeRequestReceivedEvent.class) public void handleInitializeEvent()Обработчик событияLanguageServerInitializeRequestReceivedEvent.Кэширует клиентские возможности
workspace.workspaceEdit.documentChangesиworkspace.workspaceEdit.changeAnnotationSupport, влияющие на формат результата переименования: при их отсутствии результат понижается до legacy changes-map без аннотаций. -
build
ПостроитьWorkspaceEditс правками переименования символа.Если клиент заявил
workspace.workspaceEdit.documentChanges, правки группируются по документам вdocumentChanges(TextDocumentEditс версионированным идентификатором документа); при дополнительной поддержкеworkspace.workspaceEdit.changeAnnotationSupportправки оборачиваются вAnnotatedTextEditи связываются сChangeAnnotation, описывающей переименование. Иначе результат понижается до legacychanges-map для обратной совместимости.- Parameters:
changes- Правки, сгруппированные по uri документа.oldName- Прежнее имя символа, для текста аннотации.newName- Новое имя символа, для текста аннотации.- Returns:
- Изменения документов
-