package Ġorg . cq fn . di kt at . rule set . utils . indentation Ċ Ċ import Ġorg . cq fn . di kt at . rule set . rules . files . Indent ation Error Ċ import Ġorg . jetbrains . kotlin . com . intellij . psi . Psi WhiteSpace Ċ Ċ internal Ġabstract Ġclass ĠCustom Indent ation Checker ( protected Ġval Ġconfiguration : ĠInd ent ation Config ) Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThis Ġmethod Ġchecks Ġif Ġthis Ġwhite Ġspace Ġis Ġan Ġexception Ġfrom Ġgeneral Ġrule ĊĠĠĠĠ Ġ* ĠIf Ġtrue , Ġchecks Ġif Ġit Ġis Ġproperly Ġindent ed Ġand Ġfixes ĊĠĠĠĠ Ġ* Ġ@ return Ġnull Ġtrue Ġif Ġnode Ġis Ġnot Ġan Ġexception , ĠCheck Result Ġotherwise ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġabstract Ġfun Ġcheck Node ( white Space : ĠPsi WhiteSpace , Ġindent Error : ĠInd ent ation Error ): ĠCheck Result ? Ċ } Ċ Ċ /** Ċ Ġ* Ġ@ property Ġadjust Next ĠIndicates Ġwhether Ġthe Ġindent Ġreturned Ġby Ġthis Ġexception Ġchecker Ġneeds Ġto Ġbe Ġapplied Ġto Ġother Ġnodes Ġwith Ġsame Ġparent Ċ Ġ*/ Ċ internal Ġdata Ġclass ĠCheck Result ( val Ġis Correct : ĠBoolean , Ġval Ġexpected Indent : ĠInt , Ġval Ġadjust Next : ĠBoolean ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġfrom ( actual : ĠInt , Ġexpected : ĠInt , Ġadjust Next : ĠBoolean Ġ= Ġfalse ) Ġ= ĠCheck Result ( actual Ġ== Ġexpected , Ġexpected , Ġadjust Next ) ĊĠĠĠ Ġ} Ċ } Ċ