package Ġio . gitlab . art urb os ch . de te kt . core Ċ Ċ import Ġio . github . de te kt . tool ing . api . spec . Processing Spec Ċ import Ġio . gitlab . art urb os ch . de te kt . api . Config Ċ import Ġio . gitlab . art urb os ch . de te kt . api . Properties Aware Ċ import Ġio . gitlab . art urb os ch . de te kt . api . Setup Context Ċ import Ġio . gitlab . art urb os ch . de te kt . api . Un stable Api Ċ import Ġio . gitlab . art urb os ch . de te kt . core . config . extract U ris Ċ import Ġio . gitlab . art urb os ch . de te kt . core . settings . Class loader Aware Ċ import Ġio . gitlab . art urb os ch . de te kt . core . settings . Environment Aware Ċ import Ġio . gitlab . art urb os ch . de te kt . core . settings . Environment Facade Ċ import Ġio . gitlab . art urb os ch . de te kt . core . settings . Extension Facade Ċ import Ġio . gitlab . art urb os ch . de te kt . core . settings . Logging Aware Ċ import Ġio . gitlab . art urb os ch . de te kt . core . settings . Logging Facade Ċ import Ġio . gitlab . art urb os ch . de te kt . core . settings . Properties Facade Ċ import Ġorg . jetbrains . kotlin . com . intellij . openapi . util . Dis poser Ċ import Ġorg . jetbrains . kotlin . utils . close Quiet ly Ċ import Ġjava . io . Closeable Ċ import Ġjava . net . URI Ċ Ċ /** Ċ Ġ* ĠSettings Ġto Ġbe Ġused Ġby Ġthe Ġde te kt Ġengine . Ċ Ġ* Ċ Ġ* ĠAlways Ġclose Ġthe Ġsettings Ġas Ġdispose Ġthe ĠKotlin Ġcompiler Ġand Ġde te kt Ġclass Ġloader . Ċ Ġ* ĠIf Ġusing Ġa Ġcustom Ġexecutor Ġservice Ġbe Ġaware Ġthat Ġde te kt Ġwon 't Ġshut Ġit Ġdown Ġafter Ġuse ! Ċ Ġ*/ Ċ @ Opt In ( Un stable Api :: class ) Ċ class ĠProcessing Settings ( ĊĠĠĠ Ġval Ġspec : ĠProcessing Spec , ĊĠĠĠ Ġoverride Ġval Ġconfig : ĠConfig Ċ ) Ġ: ĠAuto Closeable , ĊĠĠĠ ĠClose able , ĊĠĠĠ ĠLogging Aware Ġby ĠLogging Facade ( spec . logging Spec ), ĊĠĠĠ ĠProperties Aware Ġby ĠProperties Facade (), ĊĠĠĠ ĠEnvironment Aware Ġby ĠEnvironment Facade ( spec . project Spec , Ġspec . compiler Spec ), ĊĠĠĠ ĠClass loader Aware Ġby ĠExtension Facade ( spec . extensions Spec . plugins ), ĊĠĠĠ ĠSetup Context Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġconfig U ris : ĠCollection < URI > Ġ= Ġspec . config Spec . extract U ris () ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSh arable Ġthread Ġpool Ġbetween Ġparsing Ġand Ġanalysis Ġphase . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġtask Pool : ĠTask Pool Ġby Ġlazy Ġ{ ĠTask Pool ( spec . execution Spec . executor Service ) Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġclose () Ġ{ ĊĠĠĠĠĠĠĠ Ġclose Quiet ly ( task Pool ) ĊĠĠĠĠĠĠĠ ĠDis poser . dispose ( dis posable ) ĊĠĠĠĠĠĠĠ Ġclose Loader IfNeeded () ĊĠĠĠ Ġ} Ċ } Ċ