/* Ċ Ġ* ĠCopyright Ġ 2 0 0 0 - 2 0 1 8 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ċ Ġ* Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ @ file : Suppress (" unused ") Ċ Ċ package Ġkotlin . script . experimental . api Ċ Ċ import Ġkotlin . script . experimental . util . Properties Collection Ċ Ċ interface ĠScript Evaluation Configuration Keys Ċ Ċ class ĠScript Evaluation Configuration ( base Evaluation Environments : ĠIterable < Script Evaluation Configuration >, Ġbody : ĠBuilder . () Ġ-> ĠUnit ) Ġ: ĊĠĠĠ ĠProperties Collection ( Builder ( base Evaluation Environments ). apply ( body ). data ) Ġ{ ĊĊĠĠĠ Ġconstructor ( body : ĠBuilder . () Ġ-> ĠUnit Ġ= Ġ{}) Ġ: Ġthis ( emptyList (), Ġbody ) ĊĠĠĠ Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġvar arg Ġbase Configurations : ĠScript Evaluation Configuration , Ġbody : ĠBuilder . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠ Ġ) Ġ: Ġthis ( base Configurations . as Iterable (), Ġbody ) ĊĊĠĠĠ Ġclass ĠBuilder Ġinternal Ġconstructor ( base Evaluation Environments : ĠIterable < Script Evaluation Configuration >) Ġ: ĊĠĠĠĠĠĠĠ ĠScript Compilation Configuration Keys , ĊĠĠĠĠĠĠĠ ĠProperties Collection . Builder ( base Evaluation Environments ) ĊĊĠĠĠ Ġcompanion Ġobject Ġ: ĠScript Evaluation Configuration Keys Ċ } Ċ Ċ val ĠScript Evaluation Configuration Keys . implicit Re ceiv ers Ġby ĠProperties Collection . key < List < Any >>() Ċ Ċ val ĠScript Evaluation Configuration Keys . context Variables Ġby ĠProperties Collection . key < Map < String , ĠAny ? >>() Ġ// Ġexternal Ġvariables Ċ Ċ val ĠScript Evaluation Configuration Keys . constructor Args Ġby ĠProperties Collection . key < List < Any ? >>() Ċ Ċ val ĠScript Evaluation Configuration Keys . run Args Ġby ĠProperties Collection . key < List < Any ? >>() Ċ Ċ sealed Ġclass ĠResult Value Ġ{ ĊĠĠĠ Ġclass ĠValue ( val Ġname : ĠString , Ġval Ġvalue : ĠAny ?, Ġval Ġtype : ĠString ) Ġ: ĠResult Value () Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ= Ġ"$ name : Ġ$ type Ġ= Ġ$ value " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠUnit Ġ: ĠResult Value () Ċ } Ċ Ċ data Ġclass ĠEvaluation Result ( val ĠreturnValue : ĠResult Value , Ġval Ġconfiguration : ĠScript Evaluation Configuration ?) Ċ Ċ interface ĠScript Evaluator Ġ{ ĊĊĠĠĠ Ġsuspend Ġoperator Ġfun Ġinvoke ( ĊĠĠĠĠĠĠĠ Ġcompiled Script : ĠComp iled Script <* >, ĊĠĠĠĠĠĠĠ Ġscript Evaluation Configuration : ĠScript Evaluation Configuration ? ĊĠĠĠ Ġ): ĠResult With Diagnostics < Evaluation Result > Ċ } Ċ