/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 1 5 ĠJetBrains Ġs . r . o . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin . idea . intent ions Ċ Ċ import Ġcom . intellij . openapi . editor . Editor Ċ import Ġorg . jetbrains . kotlin . psi . Jet Binary Expression Ċ import Ġorg . jetbrains . kotlin . psi . Jet Psi Factory Ċ import Ġorg . jetbrains . kotlin . psi . Jet Function Literal Expression Ċ import Ġorg . jetbrains . kotlin . psi . Jet Parent hesized Expression Ċ import Ġorg . jetbrains . kotlin . lexer . Jet Tokens Ċ Ċ public Ġclass ĠIn fix Call To Ord inary Int ention Ġ: ĠJet Self Target ing Int ention < Jet Binary Expression >( java Class (), Ġ" Replace Ġin fix Ġcall Ġwith Ġordinary Ġcall ") Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġis Applicable To ( element : ĠJet Binary Expression , Ġcaret Offset : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( element . get Operation Token () Ġ!= ĠJet Tokens . IDENTIFIER Ġ|| Ġelement . get Left () Ġ== Ġnull Ġ|| Ġelement . get Right () Ġ== Ġnull ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġreturn Ġelement . get Operation Reference (). getText Range (). contains Offset ( caret Offset ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġapply To ( element : ĠJet Binary Expression , Ġeditor : ĠEditor ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġreceiver Text Ġ= Ġelement . get Left () !!. getText () ĊĠĠĠĠĠĠĠ Ġval Ġargument Text Ġ= Ġelement . get Right () !!. getText () ĊĠĠĠĠĠĠĠ Ġval Ġfunction Name Ġ= Ġelement . get Operation Reference (). getText () ĊĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= ĠStringBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend ( receiver Text ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (".") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend ( function Name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend ( when Ġ( element . get Right ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJet Function Literal Expression Ġ-> Ġ" Ġ$ argument Text " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJet Parent hesized Expression Ġ-> Ġargument Text ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ" ($ argument Text )" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ}. toString () ĊĊĠĠĠĠĠĠĠ Ġelement . replace ( Jet Psi Factory ( element ). create Expression ( text )) ĊĠĠĠ Ġ} Ċ } Ċ