package Ġcom . by but ter . sis y ph us . protobuf . gradle Ċ Ċ open Ġclass ĠProtobuf Extension Ġ{ ĊĠĠĠ Ġprivate Ġval Ġ_ configs : ĠMutable Map < String , ĠProto Generating Config > Ġ= Ġmutable Map Of () ĊĠĠĠ Ġprivate Ġval Ġ_ package Mapping Ġ= Ġmutable Map Of < String , ĠString >() ĊĠĠĠ Ġprivate Ġvar Ġ_ plugins Ġ= ĠProto Compiler Plugins . default ĊĊĠĠĠ Ġval Ġmapping : ĠMap < String , ĠString > Ġget () Ġ= Ġ_ package Mapping ĊĊĠĠĠ Ġval Ġplugins : ĠProto Compiler Plugins Ġget () Ġ= Ġ_ plugins ĊĊĠĠĠ Ġvar Ġsource Ġ= Ġtrue ĊĊĠĠĠ Ġvar Ġauto Generating Ġ= Ġtrue ĊĊĠĠĠ Ġfun Ġsource Set ( name : ĠString , Ġblock : ĠProto Generating Config . () Ġ-> ĠUnit Ġ= Ġ{} ): ĠProto Generating Config Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġconfig Ġ= Ġ_ configs . get Or Put ( name ) Ġ{ ĠProto Generating Config () Ġ} ĊĠĠĠĠĠĠĠ Ġconfig . block () ĊĠĠĠĠĠĠĠ Ġreturn Ġconfig ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġpackage Mapping ( proto : ĠString , Ġkotlin : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ package Mapping [ proto ] Ġ= Ġkotlin ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġpackage Mapping ( var arg Ġmapping : ĠPair < String , ĠString >) Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ package Mapping . put All ( mapping ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġplugins ( block : ĠProto Compiler Plugins . () Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ plugins Ġ= ĠProto Compiler Plugins (). apply ( block ) ĊĠĠĠ Ġ} Ċ } Ċ