tipos son que programacion metodos las generar ejemplos documentar documentacion definicion cuáles codigo clases clase java intellij-idea structural-search

son - tipos de clases en java



¿Cómo agregar @Deprecated a cada clase y cada constructor/método de cada clase? (1)

Tengo un código heredado y quiero marcarlos todos y todos sus métodos @Deprecated para que al ir y tocarlos podamos eliminar estas anotaciones para poder realizar un seguimiento de lo que se ha modernizado y lo que aún está mal .

Estoy tratando de usar la Structural Search/Replace y parece que no puedo hacer funcionar la plantilla correcta.

Plantilla de búsqueda

class $Class$ { $ReturnType$ $MethodName$($ParameterType$ $Parameter$) { $Stmt$; } }

Reemplazar la plantilla

@Deprecated class $Class$ { @Deprecated $ReturnType$ $MethodName$($ParameterType$ $Parameter$) { $Stmt$; } }

Pero esto elimina todo lo demás que hay en la clase.

@Deprecated class OldAndCrusty { @Deprecated ( ); }

Esto elimina todos los modificadores de visibilidad y los modificadores finales de todas las clases que coincide.

¿Cómo puedo reemplazar estas cosas y dejar el resto del código solo?


Desafortunadamente no puedo probar esto ya que no tengo la versión adecuada de IntelliJ. Pero como he encontrado here , puedes usar una variable para el contenido de la clase.

Plantilla de búsqueda:

class $Class$ { $MyClassContent$ }

Plantilla de reemplazo:

@Deprecated class $Class$ { $MyClassContent$ }

Los conteos mínimos y máximos de ocurrencia para la variable MyClassContent deben establecer en 0 y Integer.MAX_VALUE respectivamente. Esto debería dejarte con las clases anotadas.

Ahora, supongo que también puedes hacer lo mismo con una plantilla de método. Lo que no sé es si puede aplicar la plantilla de método a todos los métodos de la fuente. De esa manera, debería poder hacer una búsqueda y reemplazo de 2 pasos: primero para las clases, luego para los métodos.