package Ġcom . mo qi . kotlin . ch 1 1 . Invoke Convention Ċ Ċ /** Ċ Ġ* Ġä½¿çĶ¨ Ġinvoke Ġ çº¦ å®ļ æŀĦå»º æĽ´ çģ µ æ´» çļĦä»£çłģ åµ Į å¥Ĺ åĿĹ Ċ Ġ* Ċ Ġ* Ġ@ author Ġmo qi ĠOn Ġ 1 2 / 1 0 / 2 0 Ġ 1 1 : 4 0 Ċ Ġ*/ Ċ class ĠG reet er ( val Ġg reeting : ĠString ) Ġ{ ĊĠĠĠ Ġoperator Ġfun Ġinvoke ( name : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln ("$ greeting , Ġ$ name !") ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠIssue ( ĊĠĠĠ Ġval Ġid : ĠString , Ġval Ġproject : ĠString , Ġval Ġtype : ĠString , ĊĠĠĠ Ġval Ġpriority : ĠString , Ġval Ġdescription : ĠString Ċ ) Ċ Ċ class ĠImport ant Issues Predicate ( val Ġproject : ĠString ) Ġ: Ġ( Issue ) Ġ-> ĠBoolean Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġinvoke ( issue : ĠIssue ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġissue . project Ġ== Ġproject Ġ&& Ġissue . is Important () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠIssue . is Important (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtype Ġ== Ġ" Bug " Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( priority Ġ== Ġ" Major " Ġ|| Ġpriority Ġ== Ġ" Critical ") ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ class ĠDependency Handler Ġ{ ĊĠĠĠ Ġfun Ġcompile ( coordinate : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" Added Ġdependency Ġon Ġ$ coordinate ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoperator Ġfun Ġinvoke ( ĊĠĠĠĠĠĠĠ Ġbody : ĠDependency Handler . () Ġ-> ĠUnit ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbody () ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġval Ġb av arian G reet er Ġ= ĠG reet er (" Serv us ") ĊĠĠĠ Ġb av arian G reet er (" D mit ry ") ĊĠĠĠ Ġprintln () ĊĊĠĠĠ Ġval Ġi 1 Ġ= ĠIssue ( ĊĠĠĠĠĠĠĠ Ġ" IDE A - 1 5 4 4 4 6 ", Ġ" IDE A ", Ġ" Bug ", Ġ" Major ", ĊĠĠĠĠĠĠĠ Ġ" Save Ġsettings Ġfailed " ĊĠĠĠ Ġ) ĊĠĠĠ Ġval Ġi 2 Ġ= ĠIssue ( ĊĠĠĠĠĠĠĠ Ġ" KT - 1 2 1 8 3 ", Ġ" Kotlin ", Ġ" Feature ", Ġ" Normal ", ĊĠĠĠĠĠĠĠ Ġ" Int ention : Ġconvert Ġseveral Ġcalls Ġon Ġthe Ġsame Ġreceiver Ġto Ġwith / apply " ĊĠĠĠ Ġ) ĊĠĠĠ Ġval Ġpredicate Ġ= ĠImport ant Issues Predicate (" IDE A ") ĊĊĠĠĠ Ġfor Ġ( issue Ġin Ġset Of ( i 1 , Ġi 2 ). filter ( predicate )) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" issue . id Ġ= Ġ${ issue . id }") ĊĠĠĠ Ġ} ĊĠĠĠ Ġprintln () ĊĊĠĠĠ Ġval Ġkotlin Dependency Ġ= Ġ" org . jetbrains . kotlin : kotlin - stdlib : 1 . 4 . 2 1 " ĊĠĠĠ Ġval Ġdependencies Ġ= ĠDependency Handler () ĊĠĠĠ Ġdependencies . compile ( kotlin Dependency ) ĊĠĠĠ Ġdependencies Ġ{ ĊĠĠĠĠĠĠĠ Ġcompile ( kotlin Dependency ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprintln () Ċ } Ċ