bsl-language-server icon indicating copy to clipboard operation
bsl-language-server copied to clipboard

[BUG] Методы ReferenceIndex.getReferencesХХХ все-таки могут возвращать результаты не в натуральном порядке

Open artbear opened this issue 3 years ago • 4 comments

Версия

Версия BSLLS либо плагина, который использует BSLLS develop 03/07/2022

Описание ошибки диагностики

Описание ошибки, замечания

Методы ReferenceIndex.getReferencesХХХ все-таки могут возвращать результаты не в натуральном порядке ( даже после мержа https://github.com/1c-syntax/bsl-language-server/pull/2819 т.к. класс Reference не использует натуральную сортировку

Предлагаю все-таки реализовать.

На скриншоте пример вызова referenceIndex.getReferencesFrom(localMethodSymbol) видно, что для одного модуля возвращаются ссылки не в натуральном порядке.

image

Пример кода

Пример кода (в блоке code или прикрепленный файл), на котором ошибка воспроизводится

referenceIndex.getReferencesFrom(localMethodSymbol)

Скриншоты

Скриншоты с подтверждением

Дополнительная информация

Любая дополнительная информация, которая поможет в расследовании проблемы

artbear avatar Jul 03 '22 16:07 artbear

@nixel2007 @qtLex

artbear avatar Jul 03 '22 16:07 artbear

А какой момент происходит пересортировка? Метод просто перекладывает данные из символьного репо в лист через стрим. В символьном репе символы упорядоченные возвращаются?

nixel2007 avatar Jul 03 '22 17:07 nixel2007

А какой момент происходит пересортировка? Метод просто перекладывает данные из символьного репо в лист через стрим. В символьном репе символы упорядоченные возвращаются?

не уверен, что даю точный ответ. смотрю в режиме отладки - и уже в символьном репо лежат вразнобой для примера код image

artbear avatar Jul 07 '22 16:07 artbear

Эм. А почему они там должны лежать упорядоченными? CHM не является SortedMap

nixel2007 avatar Jul 07 '22 18:07 nixel2007