/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 1 9 ĠJetBrains Ġs . r . o . Ġand ĠKotlin ĠProgramming ĠLanguage Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin . nj 2 k . post Processing Ċ Ċ import Ġcom . intellij . openapi . application . Application Manager Ċ import Ġcom . intellij . openapi . application . Modal ity State Ċ import Ġcom . intellij . openapi . command . Command Processor Ċ import Ġcom . intellij . openapi . diagnostic . Logger Ċ import Ġcom . intellij . openapi . editor . Range Marker Ċ import Ġcom . intellij . openapi . progress . Process Canceled Exception Ċ import Ġkotlinx . coroutines . run Blocking Ċ import Ġkotlinx . coroutines . with Context Ċ import Ġorg . jetbrains . kotlin . diagnostics . Errors Ċ import Ġorg . jetbrains . kotlin . idea . cache s . resolve . resolve Import Reference Ċ import Ġorg . jetbrains . kotlin . idea . core . util . ED T Ċ import Ġorg . jetbrains . kotlin . idea . formatter . commit And Un block Document Ċ import Ġorg . jetbrains . kotlin . idea . ins pe ctions .* Ċ import Ġorg . jetbrains . kotlin . idea . ins pe ctions . br an ched Transform ations . If Then To El vis Inspection Ċ import Ġorg . jetbrains . kotlin . idea . ins pe ctions . br an ched Transform ations . If Then To Safe Access Inspection Ċ import Ġorg . jetbrains . kotlin . idea . ins pe ctions . convention Name Calls . Replace Get Or Set Inspection Ċ import Ġorg . jetbrains . kotlin . idea . intent ions .* Ċ import Ġorg . jetbrains . kotlin . idea . intent ions . br an ched Transform ations . intent ions . Fold If To Return As ymmetric ally Int ention Ċ import Ġorg . jetbrains . kotlin . idea . intent ions . br an ched Transform ations . intent ions . Fold If To Return Int ention Ċ import Ġorg . jetbrains . kotlin . idea . intent ions . br an ched Transform ations . is T rivial Statement Body Ċ import Ġorg . jetbrains . kotlin . idea . quick fix .* Ċ import Ġorg . jetbrains . kotlin . idea . util . Import Insert Helper Ċ import Ġorg . jetbrains . kotlin . idea . util . application . run Write Action Ċ import Ġorg . jetbrains . kotlin . j 2 k . Converter Context Ċ import Ġorg . jetbrains . kotlin . j 2 k . Post Processor Ċ import Ġorg . jetbrains . kotlin . lexer . Kt Tokens Ċ import Ġorg . jetbrains . kotlin . name . Fq Name Ċ import Ġorg . jetbrains . kotlin . nj 2 k . New J 2 k Converter Context Ċ import Ġorg . jetbrains . kotlin . nj 2 k . post Processing . process ings .* Ċ import Ġorg . jetbrains . kotlin . psi .* Ċ Ċ class ĠNew J 2 k Post Processor Ġ: ĠPost Processor Ġ{ ĊĠĠĠ Ġ@ Suppress (" Private PropertyName ") ĊĠĠĠ Ġprivate Ġval ĠLOG Ġ= ĠLogger . getInstance ("@ org . jetbrains . kotlin . nj 2 k . post Processing . New J 2 k Post Processor ") ĊĊĠĠĠ Ġoverride Ġfun Ġinsert Import ( file : ĠK t File , Ġfq Name : ĠF q Name ) Ġ{ ĊĠĠĠĠĠĠĠ ĠApplication Manager . getApplication (). invoke And Wait Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrun Write Action Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdescriptors Ġ= Ġfile . resolve Import Reference ( fq Name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescriptors . first OrNull ()?. let Ġ{ ĠImport Insert Helper . getInstance ( file . project ). import Descriptor ( file , Ġit ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġphases Count Ġ= Ġprocess ings . size ĊĊĠĠĠ Ġoverride Ġfun Ġdo Additional Processing ( ĊĠĠĠĠĠĠĠ Ġfile : ĠK t File , ĊĠĠĠĠĠĠĠ Ġconverter Context : ĠConverter Context ?, ĊĠĠĠĠĠĠĠ Ġrange Marker : ĠRange Marker ?, ĊĠĠĠĠĠĠĠ Ġon Phase Changed : Ġ(( Int , ĠString ) Ġ-> ĠUnit )? ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrun Blocking ( ED T . Modal ity State Element ( Modal ity State . default Modal ity State ())) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ(( i , Ġgroup ) Ġin Ġprocess ings . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Phase Changed ?. invoke ( i Ġ+ Ġ 1 , Ġgroup . description ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( processing Ġin Ġgroup . process ings ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprocessing . run Processing ( file , Ġrange Marker , Ġconverter Context Ġas ĠNew J 2 k Converter Context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠProcess Canceled Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġe ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( t : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLOG . error ( t ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommit File ( file ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġsuspend Ġfun Ġcommit File ( file : ĠK t File ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith Context ( ED T ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCommand Processor . getInstance (). run Undo Transparent Action Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrun Write Action Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile . commit And Un block Document () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġval Ġerrors Fix ing Diagnostic Based Post Processing Group Ġ= ĊĠĠĠ ĠDiagnostic Based Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( Errors . RED UND ANT _ OPEN _ IN _ INTERFACE ) Ġ{ Ġelement : ĠK t Modifier List Owner , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelement . remove Modifier ( Kt Tokens . OPEN _ KEYWORD ) ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( Errors . PLATFORM _ CLASS _ MAP PED _ TO _ K OT LIN ) Ġ{ Ġelement : ĠK t Dot Qualified Expression , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparent Ġ= Ġelement . parent Ġas ? ĠK t Import Directive Ġ?: Ġreturn @ diagnostic Based Processing ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparent . delete () ĊĠĠĠĠĠĠĠ Ġ}, ĊĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Ex cl Ex cl Factory No Implicit Receiver ( Add Ex cl Ex cl Call Fix ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . UN SAFE _ CALL , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . UN SAFE _ IN FIX _ CALL , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . UN SAFE _ OPERATOR _ CALL ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Ex cl Ex cl Factory No Implicit Receiver ( Missing Iterator Ex cl Ex cl Fix Factory ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . ITERATOR _ ON _ NULL ABLE ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSmart Cast Imp ossible Ex cl Ex cl Fix Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . SM ART CAST _ IMP OSS IBLE ĊĠĠĠĠĠĠĠ Ġ), ĊĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠReplace Primitive Cast With Number Conversion Fix , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . CAST _ NE VER _ SU CCE ED S ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠChange Callable ReturnType Fix . ReturnType Mismatch On Override Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . RETURN _ TYPE _ MIS MATCH _ ON _ OVERRIDE ĊĠĠĠĠĠĠĠ Ġ), ĊĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRemove Modifier Fix . create Remove Projection Factory ( true ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . RED UND ANT _ PRO JECTION ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAdd Modifier Fix . create Factory ( Kt Tokens . OVERRIDE _ KEYWORD ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . VIRTUAL _ MEMBER _ HIDDEN ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRemove Modifier Fix . create Remove Modifier From List Owner Factory ( Kt Tokens . OPEN _ KEYWORD ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . NON _ FINAL _ MEMBER _ IN _ FINAL _ CLASS , ĠErrors . NON _ FINAL _ MEMBER _ IN _ OBJECT ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMake Visible Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . IN VISIBLE _ MEMBER ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġdiagnostic Based Processing ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRemove Modifier Fix . create Remove Modifier Factory (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠErrors . WRONG _ MODI FIER _ TARGET ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġfix Val To Var Diagnostic Based Processing , ĊĠĠĠĠĠĠĠ Ġfix Type Mismatch Diagnostic Based Processing ĊĠĠĠ Ġ) ĊĊ Ċ private Ġval Ġadd Or Remove Modifiers Processing Group Ġ= ĊĠĠĠ ĠIns pection Like Processing Group ( ĊĠĠĠĠĠĠĠ Ġrun Single Time Ġ= Ġtrue , ĊĠĠĠĠĠĠĠ Ġprocess ings Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRemove Red undant Visibility Modifier Processing (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRemove Red undant Modal ity Modifier Processing (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinspection Based Processing ( Add Operator Modifier Inspection ()), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Red undant Unit ReturnType Inspection ()) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ Ċ private Ġval Ġremove Red undant Elements Processing Group Ġ= ĊĠĠĠ ĠIns pection Like Processing Group ( ĊĠĠĠĠĠĠĠ Ġrun Single Time Ġ= Ġtrue , ĊĠĠĠĠĠĠĠ Ġprocess ings Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRemove Explicit Type Arguments Processing (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRemove Java Streams Collect Call Type Arguments Processing (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Red undant Companion Reference Inspection ()), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Explicit This Inspection ()), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintention Based Processing ( Remove Empty Class Body Int ention ()) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ Ċ private Ġval Ġremove Red undant Sem icolon Processing Ġ= ĊĠĠĠ ĠIns pection Like Processing Group ( ĊĠĠĠĠĠĠĠ Ġrun Single Time Ġ= Ġtrue , ĊĠĠĠĠĠĠĠ Ġaccept Non Kt Elements Ġ= Ġtrue , ĊĠĠĠĠĠĠĠ Ġprocess ings Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Red undant Sem icolon Inspection ()) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) ĊĊ Ċ private Ġval Ġinspection Like Post Processing Group Ġ= ĊĠĠĠ ĠIns pection Like Processing Group ( ĊĠĠĠĠĠĠĠ ĠRemove Red undant Constructor Keyword Processing (), ĊĠĠĠĠĠĠĠ ĠRemove Explicit Open In Interface Processing (), ĊĠĠĠĠĠĠĠ ĠRemove Red undant Override Visibility Processing (), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Move Lambda Outside Parent heses Inspection ()), ĊĠĠĠĠĠĠĠ ĠConvert ToString Template Processing (), ĊĠĠĠĠĠĠĠ ĠUse Property Access Syntax Processing (), ĊĠĠĠĠĠĠĠ ĠUn initialized Variable Reference From Initializer To This Reference Processing (), ĊĠĠĠĠĠĠĠ ĠUn resolved Variable Reference From Initializer To This Reference Processing (), ĊĠĠĠĠĠĠĠ ĠRemove Red undant Sam Adapters Processing (), ĊĠĠĠĠĠĠĠ ĠRemove Red undant Cast To Nullable Processing (), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Replace Put With Assignment Inspection ()), ĊĠĠĠĠĠĠĠ ĠUse Expression Body Processing (), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Un necessary Variable Inspection ()), ĊĠĠĠĠĠĠĠ ĠRemove Explicit PropertyType With Inspection Processing (), ĊĠĠĠĠĠĠĠ ĠJava Object Equals To Eq Operator Processing (), ĊĠĠĠĠĠĠĠ ĠRemove Explicit PropertyType Processing (), ĊĠĠĠĠĠĠĠ ĠRemove Red undant Null ability Processing (), ĊĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Can Be Val Inspection ( ignore Not Used Vals Ġ= Ġfalse )), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Fold Initializer And If To El vis Inspection ()), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Remove Red undant Calls Of Conversion Methods Int ention ()), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Java Map ForEach Inspection ()), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Fold If To Return Int ention ()) Ġ{ Ġit . then . is T rivial Statement Body () Ġ&& Ġit .` else `. is T rivial Statement Body () Ġ}, ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Fold If To Return As ymmetric ally Int ention ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . then . is T rivial Statement Body () Ġ&& Ġ( Kt Psi Util . skip Trailing Wh ites p aces And Comments ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġas ĠK t Return Expression ). returned Expression . is T rivial Statement Body () ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( If Then To Safe Access Inspection ()), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( If Then To El vis Inspection ( highlight Statement Ġ= Ġtrue )), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Simpl ify Neg ated Binary Expression Inspection ()), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Replace Get Or Set Inspection ()), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Object Literal To Lambda Int ention ()), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Anonymous Function To Lambda Int ention ()), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Remove Un necessary Parent heses Int ention ()), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Dest ruct ure Int ention ()), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Simpl ify Assert NotNull Inspection ()), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Remove Red undant Calls Of Conversion Methods Int ention ()), ĊĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Lift Return Or Assignment Inspection ( skip Long Expressions Ġ= Ġfalse )), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Remove Empty Primary Constructor Int ention ()), ĊĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( May Be Constant Inspection ()), ĊĠĠĠĠĠĠĠ ĠRemove For Expression Loop ParameterType Processing (), ĊĠĠĠĠĠĠĠ Ġintention Based Processing ( Replace Map Get OrDefault Int ention ()), ĊĠĠĠĠĠĠĠ Ġinspection Based Processing ( Replace Guard Clause With Function Call Inspection ()) ĊĠĠĠ Ġ) ĊĊ Ċ private Ġval Ġcleaning Up Diagnostic Based Post Processing Group Ġ= ĊĠĠĠ ĠDiagnostic Based Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġremove Use less Cast Diagnostic Based Processing , ĊĠĠĠĠĠĠĠ Ġremove In necessary NotNull Assertion Diagnostic Based Processing , ĊĠĠĠĠĠĠĠ Ġfix Val To Var Diagnostic Based Processing ĊĠĠĠ Ġ) ĊĊ Ċ private Ġval Ġprocess ings : ĠList < Named Post Processing Group > Ġ= ĠlistOf ( ĊĠĠĠ ĠNamed Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġ" Inf erring Ġdeclarations Ġnull ability ", ĊĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ability Processing , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclear Undefined Labels Processing ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ), ĊĠĠĠ ĠNamed Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġ" Formatting Ġcode ", ĊĠĠĠĠĠĠĠ ĠlistOf ( format Code Processing ) ĊĠĠĠ Ġ), ĊĠĠĠ ĠNamed Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġ" Short ening Ġfully - qualified Ġreferences ", ĊĠĠĠĠĠĠĠ ĠlistOf ( short en References Processing ) ĊĠĠĠ Ġ), ĊĠĠĠ ĠNamed Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġ" Con verting ĠPO J Os Ġto Ġdata Ġclasses ", ĊĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIns pection Like Processing Group ( Var To Val Processing ()), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠConvert Get ters AndSet ters To Property Processing (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIns pection Like Processing Group ( Move Getter And Setter Annotations To Property Processing ()), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIns pection Like Processing Group ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Red undant Getter Inspection ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Inspection Based Processing ( Red undant Setter Inspection ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠConvert To Data Class Processing () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ), ĊĠĠĠ ĠNamed Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġ" Clean ing Ġup ĠKotlin Ġcode ", ĊĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Fix ing Diagnostic Based Post Processing Group , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Or Remove Modifiers Processing Group , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinspection Like Post Processing Group , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremove Red undant Sem icolon Processing , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremove Red undant Elements Processing Group , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcleaning Up Diagnostic Based Post Processing Group ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ), ĊĠĠĠ ĠNamed Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġ" Optim izing Ġimports ", ĊĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoptimize Imports Processing , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshort en References Processing ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ), ĊĠĠĠ ĠNamed Post Processing Group ( ĊĠĠĠĠĠĠĠ Ġ" Formatting Ġcode ", ĊĠĠĠĠĠĠĠ ĠlistOf ( format Code Processing ) ĊĠĠĠ Ġ) Ċ )