ReSharper 2021.3: поддержка Visual Studio 2022, улучшенная поддержка C#
JetBrains выпустили версию 2021.3 ReSharper и инструментов JetBrains для .NET.
ReSharper поддерживает финальную стабильную сборку Visual Studio 2022. Это значит, что вы сможете пользоваться привычным набором функций Visual Studio. Поскольку Visual Studio 2022 является 64-разрядным приложением, ReSharper может использовать любое количество оперативной памяти и работать быстрее.
JetBrains продолжает расширять поддержку возможностей C# 10 в ReSharper. На этот раз JetBrains поддержали пространства имен уровня файла, директивы global using
, атрибут CallerArgumentExpression
, обработчики интерполированных строк, структуры readonly record
и лямбды C# 10.
Расширяя поддержку C#, JetBrains не ограничивались ее последней версией. В этот раз JetBrains также добавили инспекции и быстрые исправления для возможностей из других версий C#.
- Появилось быстрое исправление для статических локальных/анонимных функций с замыканиями.
- Улучшили поддержку структур.
- Появилось быстрое исправление для преобразования классов в типы
record
, а затем в первичные конструкторы.
На полях редактора появились новые значки, позволяющие перемещаться по иерархии наследования класса, интерфейса или структуры. Значок ↑O
означает, что сущность наследует класс, а значок ↑I
— что сущность реализует интерфейс. Кроме того, если член класса переопределяется в производных классах, напротив него на полях редактора слева отобразится значок ↓O
.
Теперь действие Find Usages работает для операторов неявного преобразования, заданных пользователем. С помощью этого действия вы можете искать использования операторов неявного преобразования, заданные пользователем, и затем напрямую переходить к соответствующим фрагментам кода.
Если при отладке вы вызовите действие Go to Type of Symbol для переменной или параметра типа интерфейса, то перейдете не к объявлению интерфейса, а к той реализации, которая используется в текущем фрейме.
Теперь любые параметры, поля и свойства функции можно отмечать атрибутом LanguageInjection
, означающим, что строковое значение данной сущности написано на другом языке. Вы можете добавлять фрагменты кода на CSS, HTML, JavaScript, JSON и XML.
Главные обновления ReSharper C++:
- Поместили шаблоны классов Unreal Engine в список шаблонов ReSharper C++ — теперь вы можете создавать классы, не переключаясь в Unreal Editor.
- Поддержали больше возможностей C++20: автодополнение назначенных инициализаторов для агрегатной инициализации, а также инспекции, которые помогут вам освоить новые библиотечные функции.
- Дополнили поддержку C выражениями
C11 _Generic
и расширением GNUtypeof
. - Подсказка Quick Info теперь показывает значения константных выражений.
- Встроенный Clang-Tidy теперь включает проверки из Clang 13. Также добавили новые инспекции и быстрые исправления.