Class SignatureHelpProvider
java.lang.Object
com.github._1c_syntax.bsl.languageserver.providers.SignatureHelpProvider
Провайдер для запросов
textDocument/signatureHelp.
Логика работы:
- В позиции курсора ищется охватывающий узел
doCall(аргументы вызова). - По синтаксическому окружению определяется имя и тип вызываемого: глобальный метод, метод-аксессор через точку, конструктор (Новый).
- По
TypeService.getMembers(TypeRef, FileType)достаётсяMemberDescriptorс сигнатурами. - Сигнатуры маппятся в
SignatureInformation; активный параметр — по количеству запятых между открывающей скобкой вызова и курсором.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionSignatureHelpProvider(TypeService typeService, GlobalScopeProvider globalScopeProvider, LanguageServerConfiguration configuration) -
Method Summary
Modifier and TypeMethodDescriptiongetSignatureHelp(DocumentContext documentContext, SignatureHelpParams params)
-
Constructor Details
-
SignatureHelpProvider
@ConstructorProperties({"typeService","globalScopeProvider","configuration"}) public SignatureHelpProvider(TypeService typeService, GlobalScopeProvider globalScopeProvider, LanguageServerConfiguration configuration)
-
-
Method Details
-
getSignatureHelp
- Returns:
- signature help для указанной позиции, либо пустой
SignatureHelpесли контекст не определяется или у вызываемого не зарегистрированы сигнатуры
-