Использование Intellij Structural Search и Replace для изменения типов объявлений
Какие-нибудь волшебники IDE тусуются?
Я хочу сделать что-то на первый взгляд простое, что оказывается довольно сложным: я хочу заменить все объявления переменных одного типа на объявления переменных другого типа
Пример:
Foo x; ==> Bar x;
protected final Foo x; ==> protected final Bar x;
public abstract Foo = Foo() + 7; ==> public abstract Bar = Foo() + 7;
Я полагаю, что это должно быть возможно, но я не могу понять, как я живу. Я могу подобраться, но я останавливаюсь на следующих вопросах:
- Как я могу либо не изменять "модификаторы", как
public
,final
и т. д., предшествующийFoo
объявление переменных или захват их, чтобы я мог убедиться, что они не потерялись? - Как я не могу заменить правую часть знака равенства в 3-м примере?
1 ответ
Структурный поиск и замена должны работать.
Шаблон поиска:
Foo $a$ = $b$;
Замена шаблона:
Bar $a$ = $b$;
Нажмите Edit Variables
и установить Minimum count
из b
до 0 и Maximum count
в 1
, Модификаторы должны быть сохранены автоматически.