package Ġcom . a em tools . common . util Ċ Ċ import Ġcom . intellij . lang . annotation . Annotation Ċ import Ġcom . intellij . lang . annotation . Annotation Builder Ċ import Ġcom . intellij . lang . annotation . Annotation Holder Ċ import Ġcom . intellij . lang . annotation . Highlight Severity Ċ import Ġcom . intellij . openapi . editor . colors . Text Attributes Key Ċ import Ġcom . intellij . openapi . util . Text Range Ċ import Ġcom . intellij . psi . Psi Element Ċ Ċ /** Ċ Ġ* ĠCreate Ġinfo Ġannotation Ġbuilder Ġin Ġcurrent Ġannotation Ġholder Ġusing Ġgiven Ġtext Ġrange . Ċ Ġ* Ċ Ġ* Ġ@ param Ġrange Ġtext Ġrange Ġto Ġwhich Ġthe Ġhighlight Ġshould Ġbe Ġapplied Ċ Ġ* Ġ@ param Ġtext Attributes Key Ġhighlight Ġstyle Ċ Ġ* Ġ@ param Ġmessage Ġtext Ġmessage Ġ(` null ` Ġby Ġdefault ) Ċ Ġ* Ċ Ġ* Ġ@ receiver Ġ[ Annotation Holder ] Ċ Ġ* Ġ@ return Ġ[ Annotation Builder ] Ġobject ] Ċ Ġ*/ Ċ fun ĠAnnotation Holder . create Info Annotation Builder ( range : ĠText Range , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Attributes Key : ĠText Attributes Key , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage : ĠString ? Ġ= Ġnull ): ĠAnnotation Builder Ġ{ ĊĠ Ġval Ġannotation Builder Ġ= Ġif Ġ( message Ġ== Ġnull ) Ġ{ ĊĠĠĠ Ġnew Sil ent Annotation ( Highlight Severity . WE AK _ WARNING ) ĊĠ Ġ} Ġelse Ġ{ ĊĠĠĠ Ġnew Annotation ( Highlight Severity . WE AK _ WARNING , Ġmessage ) ĊĠ Ġ} ĊĠ Ġreturn Ġannotation Builder ĊĠĠĠĠĠ Ġ. range ( range ) ĊĠĠĠĠĠ Ġ. text Attributes ( text Attributes Key ) Ċ } Ċ Ċ /** Ċ Ġ* ĠCreate Ġinfo Ġannotation Ġin Ġcurrent Ġannotation Ġholder Ġusing Ġgiven Ġtext Ġrange . Ċ Ġ* Ċ Ġ* Ġ@ param Ġrange Ġtext Ġrange Ġto Ġwhich Ġthe Ġhighlight Ġshould Ġbe Ġapplied Ċ Ġ* Ġ@ param Ġtext Attributes Key Ġhighlight Ġstyle Ċ Ġ* Ġ@ param Ġmessage Ġtext Ġmessage Ġ(` null ` Ġby Ġdefault ) Ċ Ġ* Ċ Ġ* Ġ@ receiver Ġ[ Annotation Holder ] Ċ Ġ*/ Ċ fun ĠAnnotation Holder . create Info Annotation ( range : ĠText Range , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Attributes Key : ĠText Attributes Key , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage : ĠString ? Ġ= Ġnull ): ĠUnit Ġ= ĊĠĠĠ Ġcreate Info Annotation Builder ( range , Ġtext Attributes Key , Ġmessage ). create () Ċ Ċ /** Ċ Ġ* ĠCreate Ġinfo Ġannotation Ġbuilder Ġin Ġcurrent Ġannotation Ġholder Ġusing Ġgiven Ġpsi Ġelement . Ċ Ġ* Ċ Ġ* Ġ@ param Ġelement Ġthe Ġelement Ġto Ġhighlight Ċ Ġ* Ġ@ param Ġtext Attributes Key Ġhighlight Ġstyle Ċ Ġ* Ġ@ param Ġmessage Ġtext Ġmessage Ġ(` null ` Ġby Ġdefault ) Ċ Ġ* Ċ Ġ* Ġ@ receiver Ġ[ Annotation Holder ] Ċ Ġ* Ġ@ return Ġ[ Annotation Builder ] Ġobject Ċ Ġ*/ Ċ fun ĠAnnotation Holder . create Info Annotation Builder ( element : ĠPsi Element , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Attributes Key : ĠText Attributes Key , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage : ĠString ? Ġ= Ġnull ): ĠAnnotation Builder Ġ= ĊĠĠĠ Ġcreate Info Annotation Builder ( element . text Range , Ġtext Attributes Key , Ġmessage ) Ċ Ċ /** Ċ Ġ* ĠCreate Ġinfo Ġannotation Ġin Ġcurrent Ġannotation Ġholder Ġusing Ġgiven Ġpsi Ġelement . Ċ Ġ* Ċ Ġ* Ġ@ param Ġelement Ġthe Ġelement Ġto Ġhighlight Ċ Ġ* Ġ@ param Ġtext Attributes Key Ġhighlight Ġstyle Ċ Ġ* Ġ@ param Ġmessage Ġtext Ġmessage Ġ(` null ` Ġby Ġdefault ) Ċ Ġ* Ċ Ġ* Ġ@ receiver Ġ[ Annotation Holder ] Ċ Ġ*/ Ċ fun ĠAnnotation Holder . create Info Annotation ( element : ĠPsi Element , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Attributes Key : ĠText Attributes Key , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage : ĠString ? Ġ= Ġnull ): ĠUnit Ġ= ĊĠĠĠ Ġcreate Info Annotation Builder ( element , Ġtext Attributes Key , Ġmessage ). create () Ċ Ċ /** Ċ Ġ* ĠCreate Ġerror Ġannotation Ġin Ġcurrent Ġannotation Ġholder Ġusing Ġgiven Ġpsi Ġelement . Ċ Ġ* Ċ Ġ* Ġ@ param Ġelement Ġthe Ġelement Ġthat Ġshould Ġbe Ġmarked Ġwith Ġerror Ċ Ġ* Ġ@ param Ġmessage Ġerror Ġmessage Ġ(` null ` Ġby Ġdefault ) Ċ Ġ* Ċ Ġ* Ġ@ receiver Ġ[ Annotation Holder ] Ċ Ġ*/ Ċ fun ĠAnnotation Holder . error ( element : ĠPsi Element , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage : ĠString ?) Ġ{ ĊĠ Ġval Ġannotation Builder Ġ= Ġif Ġ( message Ġ== Ġnull ) Ġ{ ĊĠĠĠ Ġnew Sil ent Annotation ( Highlight Severity . WE AK _ WARNING ) ĊĠ Ġ} Ġelse Ġ{ ĊĠĠĠ Ġnew Annotation ( Highlight Severity . WE AK _ WARNING , Ġmessage ) ĊĠ Ġ} ĊĠ Ġreturn Ġannotation Builder ĊĠĠĠĠĠ Ġ. range ( element . text Range ) ĊĠĠĠĠĠ Ġ. create () Ċ } ĊĊ