package Ġde . item is . mps . gradle Ċ Ċ import Ġorg . gradle . api . Gradle Exception Ċ import Ġorg . gradle . api . Project Ċ import Ġorg . gradle . api . artifacts . Configuration Ċ import Ġjava . io . File Ċ Ċ data Ġclass ĠPlugin ( ĊĠĠĠĠĠĠĠ Ġvar Ġid : ĠString , ĊĠĠĠĠĠĠĠ Ġvar Ġpath : ĠString Ċ ) Ċ Ċ data Ġclass ĠMacro ( ĊĠĠĠĠĠĠĠ Ġvar Ġname : ĠString , ĊĠĠĠĠĠĠĠ Ġvar Ġvalue : ĠString Ċ ) Ċ Ċ open Ġclass ĠBase Plugin Extensions Ġ{ ĊĠĠĠ Ġlateinit Ġvar Ġmp s Config : ĠConfiguration ĊĠĠĠ Ġvar Ġmp s Location : ĠFile ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġplugins : ĠList < Plugin > Ġ= Ġempty List () ĊĠĠĠ Ġvar Ġplugin Location : ĠFile ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġmacros : ĠList < Macro > Ġ= Ġempty List () ĊĠĠĠ Ġvar Ġproject Location : ĠFile ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġdebug Ġ= Ġfalse Ċ } Ċ Ċ fun Ġargs From Base Extension ( extensions : ĠBase Plugin Extensions ): ĠMutable List < String > Ġ{ ĊĠĠĠ Ġval Ġplugin Location Ġ= Ġif Ġ( extensions . plugin Location Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsequence Of ("-- plugin - location =${ extensions . plugin Location !!. absolute Path }") ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġempty Sequence () ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġval Ġproject Location Ġ= Ġextensions . project Location Ġ?: Ġthrow ĠGradle Exception (" No Ġproject Ġpath Ġset ") ĊĠĠĠ Ġval Ġpr j Ġ= Ġsequence Of ("-- project =${ project Location . absolute Path }") ĊĊĠĠĠ Ġreturn Ġsequence Of ( plugin Location , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġextensions . plugins . map Ġ{ Ġ"-- plugin =${ it . id } :: ${ it . path }" Ġ}. as Sequence (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġextensions . macros . map Ġ{ Ġ"-- macro =${ it . name } :: ${ it . value }" Ġ}. as Sequence (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpr j ). flatten (). to Mutable List () Ċ }