-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixes & bumps #3233
Fixes & bumps #3233
Conversation
- sq fixes
WalkthroughВ проекте был проведен рефакторинг кода: обновлены зависимости, улучшена читаемость и поддерживаемость методов, аннотации Changes
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
Qodana Community for JVM17 new problems were found
💡 Qodana analysis was run in the pull request mode: only the changed files were checked Contact Qodana teamContact us at qodana-support@jetbrains.com
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 9
Configuration used: CodeRabbit UI
Files selected for processing (72)
- build.gradle.kts (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/CfgBuildingParseTreeVisitor.java (8 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/ControlFlowGraph.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/StatementsBlockWriter.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/cli/AnalyzeCommand.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java (6 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/codelenses/RunTestCodeLensSupplier.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/color/ConstructorColorInformationSupplier.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/configuration/Language.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/configuration/LanguageServerConfiguration.java (7 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/context/computer/CognitiveComplexityComputer.java (5 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/context/computer/CyclomaticComplexityComputer.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/context/symbol/description/DescriptionReader.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AbstractFindMethodDiagnostic.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AbstractMultilingualStringDiagnostic.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AllFunctionPathMustHaveReturnDiagnostic.java (5 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/CodeAfterAsyncCallDiagnostic.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/CommentedCodeDiagnostic.java (6 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/CreateQueryInCycleDiagnostic.java (5 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/DuplicatedInsertionIntoCollectionDiagnostic.java (8 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/EmptyCodeBlockDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/FunctionOutParameterDiagnostic.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/IfElseDuplicatedCodeBlockDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/IfElseDuplicatedConditionDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/IncorrectLineBreakDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/LatinAndCyrillicSymbolInWordDiagnostic.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MagicDateDiagnostic.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MagicNumberDiagnostic.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MissingSpaceDiagnostic.java (4 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MissingTemporaryFileDeletionDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/RefOveruseDiagnostic.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/RewriteMethodParameterDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/SetPermissionsForNewObjectsDiagnostic.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/SpaceAtStartCommentDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/TransferringParametersBetweenClientAndServerDiagnostic.java (4 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/UnusedLocalMethodDiagnostic.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/UnusedParametersDiagnostic.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/UsingServiceTagDiagnostic.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/WrongUseOfRollbackTransactionMethodDiagnostic.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/infrastructure/DiagnosticBeanPostProcessor.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticCompatibilityMode.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticInfo.java (4 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticParameterInfo.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticTag.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/folding/CodeBlockFoldingRangeSupplier.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/inlayhints/SourceDefinedMethodCallInlayHintSupplier.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/providers/SelectionRangeProvider.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/providers/SymbolProvider.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/references/model/Symbol.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/references/model/SymbolOccurrence.java (1 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/reporters/GenericIssueReport.java (4 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/reporters/JUnitTestSuites.java (5 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/reporters/TSLintReportEntry.java (2 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/utils/Trees.java (16 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/utils/expressiontree/DefaultNodeEqualityComparer.java (3 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/utils/expressiontree/ExpressionTreeBuildingVisitor.java (14 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/cfg/ControlFlowGraphBuilderTest.java (12 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/context/DocumentContextTest.java (1 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/context/ServerContextTest.java (1 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/context/symbol/description/MethodDescriptionTest.java (3 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AllFunctionPathMustHaveReturnDiagnosticTest.java (2 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/CommentedCodeDiagnosticTest.java (1 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/ConsecutiveEmptyLinesDiagnosticTest.java (10 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/DiagnosticInfosTest.java (1 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/IdenticalExpressionsDiagnosticTest.java (3 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/InvalidCharacterInFileDiagnosticTest.java (1 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MissingTempStorageDeletionDiagnosticTest.java (4 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/hover/MethodSymbolMarkupContentBuilderTest.java (3 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/hover/VariableSymbolMarkupContentBuilderTest.java (5 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/providers/FormatProviderTest.java (2 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/references/ReferenceResolverTest.java (1 hunks)
- src/test/java/com/github/_1c_syntax/bsl/languageserver/utils/ExpressionParseTreeRewriterTest.java (1 hunks)
Files skipped from review due to trivial changes (31)
- build.gradle.kts
- src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/ControlFlowGraph.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/StatementsBlockWriter.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/color/ConstructorColorInformationSupplier.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/context/computer/CognitiveComplexityComputer.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AbstractMultilingualStringDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/CommentedCodeDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/DuplicatedInsertionIntoCollectionDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/EmptyCodeBlockDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/IfElseDuplicatedCodeBlockDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/IfElseDuplicatedConditionDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/LatinAndCyrillicSymbolInWordDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MissingSpaceDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/UnusedParametersDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/UsingServiceTagDiagnostic.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/infrastructure/DiagnosticBeanPostProcessor.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/folding/CodeBlockFoldingRangeSupplier.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/references/model/Symbol.java
- src/main/java/com/github/_1c_syntax/bsl/languageserver/utils/Trees.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/cfg/ControlFlowGraphBuilderTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/context/symbol/description/MethodDescriptionTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AllFunctionPathMustHaveReturnDiagnosticTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/DiagnosticInfosTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/IdenticalExpressionsDiagnosticTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/InvalidCharacterInFileDiagnosticTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MissingTempStorageDeletionDiagnosticTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/hover/MethodSymbolMarkupContentBuilderTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/hover/VariableSymbolMarkupContentBuilderTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/providers/FormatProviderTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/references/ReferenceResolverTest.java
- src/test/java/com/github/_1c_syntax/bsl/languageserver/utils/ExpressionParseTreeRewriterTest.java
Additional comments: 59
src/main/java/com/github/_1c_syntax/bsl/languageserver/configuration/Language.java (1)
- 32-32:
@Getter
аннотация применена к уровню перечисления, что позволяет генерировать геттеры для всех полей перечисления. Это изменение упрощает код и улучшает его читаемость.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticTag.java (1)
- 24-24: Добавление аннотации
@Getter
на уровне перечисленияDiagnosticTag
позволяет автоматически генерировать геттер для поляdescription
, что уменьшает количество шаблонного кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/references/model/SymbolOccurrence.java (1)
- 58-67: Изменения в методе
compareTo
улучшают читаемость кода за счет использованияfinal var
и правильного форматирования.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticCompatibilityMode.java (2)
- 53-55: Добавление новых режимов совместимости (8.3.22, 8.3.23, 8.3.24) в перечисление
DiagnosticCompatibilityMode
расширяет поддержку различных версий платформы 1С:Предприятие.- 57-57: Использование аннотации
@Getter
для поляcompatibilityMode
упрощает доступ к данным полям и уменьшает количество шаблонного кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/WrongUseOfRollbackTransactionMethodDiagnostic.java (1)
- 66-66: Замена
collect(Collectors.toList())
наtoList()
упрощает код и делает его более читаемым, используя возможности Java 16.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/FunctionOutParameterDiagnostic.java (2)
- 53-60: Использование
var
для объявления переменнойparameters
и заменаcollect(Collectors.toList())
наtoList()
улучшает читаемость и упрощает код.- 66-66: Замена явного объявления типа
Map<String, BSLParserRuleContext>
наvar
улучшает читаемость кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticParameterInfo.java (1)
- 34-34: Применение аннотации
@Getter
на уровне классаDiagnosticParameterInfo
уменьшает количество шаблонного кода и улучшает читаемость.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/SetPermissionsForNewObjectsDiagnostic.java (1)
- 58-58: Изменение в присвоении
defaultValue
в аннотацииDiagnosticParameter
с"" + NAMES_FULL_ACCESS_ROLE
наNAMES_FULL_ACCESS_ROLE
улучшает читаемость и корректность кода.src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/CommentedCodeDiagnosticTest.java (1)
- 84-86: Упрощение добавления значений в
thresholdVariants
улучшает читаемость тестового кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/reporters/TSLintReportEntry.java (3)
- 36-49: Изменение
severityMap
наSEVERITY_MAP
и его объявление какprivate static final
соответствует конвенции именования констант в Java и улучшает читаемость кода.- 57-57: Использование
SEVERITY_MAP
вместоseverityMap
для полученияruleSeverity
улучшает читаемость и корректность кода.- 77-77: Добавление аннотации
@Getter
к внутреннему классуEntryPosition
уменьшает количество шаблонного кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/providers/SymbolProvider.java (2)
- 58-58: Переименование
supportedVariableKinds
вSUPPORTED_VARIABLE_KINDS
соответствует конвенции именования констант в Java.- 90-94: Рефакторинг метода
isSupported
с использованием выраженияswitch
улучшает читаемость и упрощает код.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AbstractFindMethodDiagnostic.java (1)
- 86-89: Рефакторинг метода
getMessage
с использованием сопоставления с образцом (instanceof
) улучшает читаемость и упрощает код.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MagicNumberDiagnostic.java (1)
- 55-55: Изменение в присвоении
defaultValue
в аннотацииDiagnosticParameter
с"" + DEFAULT_AUTHORIZED_NUMBERS
наDEFAULT_AUTHORIZED_NUMBERS
улучшает читаемость и корректность кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MagicDateDiagnostic.java (2)
- 72-72: Изменение в присвоении
defaultValue
в аннотацииDiagnosticParameter
с"" + DEFAULT_AUTHORIZED_DATES
наDEFAULT_AUTHORIZED_DATES
улучшает читаемость и корректность кода.- 112-118: Добавление имени параметра в условие
if
в методеcheckExclAddDiagnostic
улучшает читаемость и понимание кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/providers/SelectionRangeProvider.java (2)
- 132-141: Метод
getParentContext
использует pattern matching дляinstanceof
, что улучшает читаемость кода.- 204-204: Метод
ifBranchMatchesIfStatement
использует pattern matching дляinstanceof
, что улучшает читаемость кода.src/test/java/com/github/_1c_syntax/bsl/languageserver/context/DocumentContextTest.java (1)
- 140-140: Изменение условия в тесте
testRegionsAdjustingCompute
с проверки наличия методов у символов региона на проверку, что методы не пусты, может быть связано с изменением логики в коде, который тестируется. Убедитесь, что это изменение отражает новую логику и не нарушает существующие тесты.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AllFunctionPathMustHaveReturnDiagnostic.java (5)
- 116-116: Использование
toList()
вместоcollect(Collectors.toList())
улучшает читаемость и производительность.- 138-143: Использование pattern matching для
instanceof
улучшает читаемость кода.- 167-167: Использование pattern matching для
instanceof
улучшает читаемость кода.- 180-180: Использование pattern matching для
instanceof
улучшает читаемость кода.- 192-192: Использование pattern matching для
instanceof
улучшает читаемость кода.src/test/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/ConsecutiveEmptyLinesDiagnosticTest.java (1)
- 102-114: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [42-283]
В тестах
ConsecutiveEmptyLinesDiagnosticTest
были изменены строки с тестовыми данными. Проверьте, что изменения соответствуют ожидаемому поведению диагностики и что тесты по-прежнему корректно отражают сценарии использования.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/TransferringParametersBetweenClientAndServerDiagnostic.java (2)
- 89-89: Использование
var
для локальных переменных улучшает читаемость кода.- 138-138: Использование
toList()
вместоcollect(Collectors.toList())
улучшает читаемость и производительность.src/main/java/com/github/_1c_syntax/bsl/languageserver/inlayhints/SourceDefinedMethodCallInlayHintSupplier.java (1)
- 200-202: Использование pattern matching для
instanceof
улучшает читаемость кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/MissingTemporaryFileDeletionDiagnostic.java (5)
- 123-123: Использование
toList()
вместоcollect(Collectors.toList())
улучшает читаемость и производительность.- 129-131: Использование pattern matching для
instanceof
улучшает читаемость кода.- 139-139: Использование pattern matching для
instanceof
улучшает читаемость кода.- 194-196: Использование pattern matching для
instanceof
улучшает читаемость кода.- 204-204: Использование pattern matching для
instanceof
улучшает читаемость кода.src/main/java/com/github/_1c_syntax/bsl/languageserver/cli/AnalyzeCommand.java (1)
- 206-207: Использование
var
для локальных переменныхdiagnostics
иmetrics
улучшает читаемость кода и соответствует современным практикам Java. Однако, стоит убедиться, что в остальной части кода не требуется явное указание типа для корректной работы.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/metadata/DiagnosticInfo.java (1)
- 52-52: Добавление аннотации
@Getter
для поляdiagnosticClass
уменьшает количество шаблонного кода и улучшает читаемость. Это соответствует принципам Lombok и является хорошей практикой.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/RewriteMethodParameterDiagnostic.java (1)
- 185-185: Замена
collect(Collectors.toList())
наtoList()
упрощает код и делает его более читаемым, так какtoList()
является частью стандартной библиотеки Java начиная с версии 16.src/main/java/com/github/_1c_syntax/bsl/languageserver/configuration/LanguageServerConfiguration.java (3)
- 149-149: Использование
var
для переменнойpathFromConfiguration
улучшает читаемость кода и соответствует современным практикам Java.- 163-163: Использование
var
для переменнойfileConfiguration
улучшает читаемость кода и соответствует современным практикам Java.- 191-191: Замена
collect(Collectors.toList())
наtoList()
упрощает код и делает его более читаемым, так какtoList()
является частью стандартной библиотеки Java начиная с версии 16.src/main/java/com/github/_1c_syntax/bsl/languageserver/context/computer/CyclomaticComplexityComputer.java (3)
- 204-204: Использование
var
для переменнойmethodNameContext
улучшает читаемость кода и соответствует современным практикам Java.- 237-237: Комбинирование проверки типа и приведения типа в одном выражении
instanceof
упрощает код и делает его более читаемым.- 266-266: Использование
var
для переменнойsplitter
улучшает читаемость кода и соответствует современным практикам Java.src/main/java/com/github/_1c_syntax/bsl/languageserver/utils/expressiontree/ExpressionTreeBuildingVisitor.java (5)
- 134-134: Использование
instanceof
с переменной шаблонаterminalNode
упрощает код и делает его более читаемым, также уменьшает количество приведений типов.- 159-160: Использование
var
для параметров методаvisitParenthesis
улучшает читаемость кода и соответствует современным практикам Java.- 247-252: Преобразование обычного
switch
в выражениеswitch
улучшает читаемость кода и делает его более компактным.- 369-369: Использование
var
в циклеfor
для переменнойparameter
улучшает читаемость кода и соответствует современным практикам Java.- 384-395: Использование
Objects.requireNonNull
для проверки наnull
перед использованием оператора улучшает надежность кода, предотвращая возможныеNullPointerException
.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/RefOveruseDiagnostic.java (1)
- 191-196: Использование метода
toList()
вместоcollect(Collectors.toList())
является корректным изменением, учитывая, что проект использует Java 16, где этот метод был добавлен в стандартную библиотеку.src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/CreateQueryInCycleDiagnostic.java (2)
- 34-34: Добавление аннотации
@Getter
к внутреннему классуScope
является корректным изменением, так как это уменьшает количество шаблонного кода и автоматически генерирует геттеры для всех полей класса.- 123-125: Рефакторинг проверки
instanceof
с использованием шаблона сопоставления является улучшением читаемости кода и соответствует современным практикам Java.src/main/java/com/github/_1c_syntax/bsl/languageserver/context/symbol/description/DescriptionReader.java (1)
- 239-241: Изменение метода
trim
наstrip
для удаления начальных и конечных пробелов в строках является корректным, так какstrip
является более новым методом, который учитывает Unicode и предоставляет более точное удаление пробелов.src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/CfgBuildingParseTreeVisitor.java (4)
- 150-155: Удаление импорта
java.util.stream.Collectors
является корректным, если этот импорт больше не используется в файле.- 150-155: Условие внутри цикла
while
проверяет, является лиblockTail
пустым блоком, и если да, то пропускает его. Это улучшение читаемости и поддерживаемости кода.- 499-499: Метод
isStatementLevelPreproc
корректно рефакторится для улучшения читаемости.- 505-507: Метод
popPreprocCondition
улучшен для лучшей читаемости и поддерживаемости.
src/main/java/com/github/_1c_syntax/bsl/languageserver/codelenses/RunTestCodeLensSupplier.java
Show resolved
Hide resolved
src/main/java/com/github/_1c_syntax/bsl/languageserver/providers/SelectionRangeProvider.java
Show resolved
Hide resolved
src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/RefOveruseDiagnostic.java
Outdated
Show resolved
Hide resolved
src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/CfgBuildingParseTreeVisitor.java
Show resolved
Hide resolved
src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/CfgBuildingParseTreeVisitor.java
Show resolved
Hide resolved
src/main/java/com/github/_1c_syntax/bsl/languageserver/cfg/CfgBuildingParseTreeVisitor.java
Show resolved
Hide resolved
Qodana Community for JVM16 new problems were found
💡 Qodana analysis was run in the pull request mode: only the changed files were checked Contact Qodana teamContact us at qodana-support@jetbrains.com
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 1
Configuration used: CodeRabbit UI
Files selected for processing (2)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java (6 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/RefOveruseDiagnostic.java (3 hunks)
Files skipped from review as they are similar to previous changes (1)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/RefOveruseDiagnostic.java
Additional comments: 4
src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java (4)
- 80-87: Удаление использования
java.util.stream.Collectors
и замена на методtoList()
улучшает читаемость и сокращает код.- 103-103: Проверьте, что замена явного типа на
var
не влияет на понимание кода, особенно если тип переменной не очевиден из контекста.Verification successful
Тип переменной
maybeDoCall
определён какOptional<TerminalNode>
. Это означает, что использованиеvar
в данном контексте не влияет на понимание кода, так как методfindTerminalNodeContainsPosition
явно возвращаетOptional<TerminalNode>
, и это можно понять из названия метода и контекста его использования.* 117-117: Использование `var` для локальных переменных может улучшить читаемость, но важно следить за тем, чтобы типы оставались понятными. * 134-134: Изменения в цикле для создания текста редактирования выглядят корректными, но стоит проверить, что форматирование строк соответствует стандартам проекта.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Поиск использования var, чтобы убедиться, что типы переменных понятны из контекста. rg --type java 'var ' src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.javaLength of output: 1685
Script:
#!/bin/bash # Поиск объявления переменной maybeDoCall для определения её типа rg --type java 'maybeDoCall' src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.javaLength of output: 317
Script:
#!/bin/bash # Поиск объявления переменной maybeDoCall с явным типом rg --type java -B 2 'var maybeDoCall =' src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.javaLength of output: 275
Script:
#!/bin/bash # Поиск сигнатуры метода findTerminalNodeContainsPosition для определения возвращаемого типа rg --type java 'findTerminalNodeContainsPosition' src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java -A 1Length of output: 277
Script:
#!/bin/bash # Поиск определения метода findTerminalNodeContainsPosition во всем проекте rg --type java 'findTerminalNodeContainsPosition' -A 1Length of output: 2359
Verification successful
Изменения в цикле для создания текста редактирования используют
String.format
для форматирования строк, что соответствует общепринятому стилю проекта, основываясь на анализе других файлов. Форматирование строк в предоставленном фрагменте кода выглядит корректным и соответствует стандартам проекта.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Проверка соответствия форматирования строк стандартам проекта. rg --type java 'String.format' src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.javaLength of output: 250
Script:
#!/bin/bash # Поиск использования String.format во всех Java файлах проекта для определения стандартов форматирования строк. rg --type java 'String.format' -g '*.java'Length of output: 8150
...om/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 3
Configuration used: CodeRabbit UI
Files selected for processing (2)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java (5 hunks)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/FunctionOutParameterDiagnostic.java (3 hunks)
Files skipped from review as they are similar to previous changes (1)
- src/main/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/FunctionOutParameterDiagnostic.java
Additional comments: 1
src/main/java/com/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java (1)
- 80-87: Использование
toList()
без полного импорта может привести к ошибкам компиляции, если метод не был статически импортирован.Проверьте, что статический импорт
toList()
присутствует в файле или добавьте его, чтобы избежать ошибок компиляции.
...om/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java
Show resolved
Hide resolved
...om/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java
Show resolved
Hide resolved
...om/github/_1c_syntax/bsl/languageserver/codeactions/ExtractStructureConstructorSupplier.java
Show resolved
Hide resolved
Quality Gate passedThe SonarCloud Quality Gate passed, but some issues were introduced. 8 New issues |
Описание
Связанные задачи
Closes
Чеклист
Общие
gradlew precommit
)Для диагностик
Дополнительно
Summary by CodeRabbit
Обновления
Улучшения в диагностике
Рефакторинг
Улучшения интерфейса
Исправления ошибок
Тестирование
Документация