package Ġorg . jetbrains . kotlin . library Ċ Ċ import Ġorg . jetbrains . kotlin . kon an . file . File Ċ import Ġorg . jetbrains . kotlin . kon an . properties . Properties Ċ import Ġorg . jetbrains . kotlin . kon an . properties . property List Ċ Ċ const Ġval ĠK LIB _ PROPERTY _ ABI _ VERSION Ġ= Ġ" abi _ version " Ċ const Ġval ĠK LIB _ PROPERTY _ COMPILER _ VERSION Ġ= Ġ" compiler _ version " Ċ const Ġval ĠK LIB _ PROPERTY _ DEPEND ENCY _ VERSION Ġ= Ġ" dependency _ version " Ċ const Ġval ĠK LIB _ PROPERTY _ LIBRARY _ VERSION Ġ= Ġ" library _ version " Ċ const Ġval ĠK LIB _ PROPERTY _ METADATA _ VERSION Ġ= Ġ" metadata _ version " Ċ const Ġval ĠK LIB _ PROPERTY _ IR _ VERSION Ġ= Ġ" ir _ version " Ċ const Ġval ĠK LIB _ PROPERTY _ UNIQUE _ NAME Ġ= Ġ" unique _ name " Ċ const Ġval ĠK LIB _ PROPERTY _ DEPEND S Ġ= Ġ" depends " Ċ const Ġval ĠK LIB _ PROPERTY _ PACKAGE Ġ= Ġ" package " Ċ const Ġval ĠK LIB _ PROPERTY _ INTER OP Ġ= Ġ" interop " Ċ const Ġval ĠK LIB _ PROPERTY _ EXPORT _ FORWARD _ DECL AR ATIONS Ġ= Ġ" export Forward Declarations " Ċ const Ġval ĠK LIB _ PROPERTY _ BUIL T INS _ PLATFORM Ġ= Ġ" builtins _ platform " Ċ Ċ /** Ċ Ġ* ĠAb stractions Ġfor Ġgetting Ġaccess Ġto Ġthe Ġinformation Ġstored Ġinside Ġof ĠKotlin / Native Ġlibrary . Ċ Ġ*/ Ċ Ċ interface ĠBase Kotlin Library Ġ{ ĊĠĠĠ Ġval Ġlibrary Name : ĠString ĊĠĠĠ Ġval Ġlibrary File : ĠFile ĊĠĠĠ Ġval Ġcomponent List : ĠList < String > ĊĠĠĠ Ġval Ġversions : ĠKotlin Library Version ing ĊĠĠĠ Ġ// ĠWhether Ġthis Ġlibrary Ġis Ġdefault Ġ( provided Ġby Ġdistribution )? ĊĠĠĠ Ġval Ġis Default : ĠBoolean ĊĠĠĠ Ġval Ġmanifest Properties : ĠProperties ĊĠĠĠ Ġval Ġhas _ pre _ 1 _ 4 _ manifest : ĠBoolean Ċ } Ċ Ċ interface ĠMetadata Library Ġ{ ĊĠĠĠ Ġval Ġmodule Header Data : ĠByteArray ĊĠĠĠ Ġfun Ġpackage Metadata Parts ( fq Name : ĠString ): ĠSet < String > ĊĠĠĠ Ġfun Ġpackage Metadata ( fq Name : ĠString , Ġpart Name : ĠString ): ĠByteArray Ċ } Ċ Ċ interface ĠIr Library Ġ{ ĊĠĠĠ Ġval Ġdata Flow Graph : ĠByteArray ? ĊĠĠĠ Ġfun Ġir Declaration ( index : ĠInt , Ġfile Index : ĠInt ): ĠByteArray ĊĠĠĠ Ġfun Ġtype ( index : ĠInt , Ġfile Index : ĠInt ): ĠByteArray ĊĠĠĠ Ġfun Ġsignature ( index : ĠInt , Ġfile Index : ĠInt ): ĠByteArray ĊĠĠĠ Ġfun Ġstring ( index : ĠInt , Ġfile Index : ĠInt ): ĠByteArray ĊĠĠĠ Ġfun Ġbody ( index : ĠInt , Ġfile Index : ĠInt ): ĠByteArray ĊĠĠĠ Ġfun Ġfile ( index : ĠInt ): ĠByteArray ĊĠĠĠ Ġfun Ġfile Count (): ĠInt Ċ } Ċ Ċ val ĠBase Kotlin Library . unique Name : ĠString ĊĠĠĠ Ġget () Ġ= Ġmanifest Properties . getProperty ( K LIB _ PROPERTY _ UNIQUE _ NAME ) !! Ċ Ċ val ĠBase Kotlin Library . un resolved Dependencies : ĠList < Un resolved Library > ĊĠĠĠ Ġget () Ġ= Ġmanifest Properties . property List ( K LIB _ PROPERTY _ DEPEND S , Ġescape In Quotes Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ. map Ġ{ ĠUn resolved Library ( it , Ġmanifest Properties . getProperty (" dependency _ version _$ it ")) Ġ} Ċ Ċ interface ĠKotlin Library Ġ: ĠBase Kotlin Library , ĠMetadata Library , ĠIr Library Ċ Ċ // ĠTODO : Ġshould Ġwe Ġmove Ġthe Ġbelow Ġones Ġto ĠNative ? Ċ val ĠKotlin Library . is Interop ĊĠĠĠ Ġget () Ġ= Ġmanifest Properties . getProperty ( K LIB _ PROPERTY _ INTER OP ) Ġ== Ġ" true " Ċ Ċ val ĠKotlin Library . package Fq Name : ĠString ? ĊĠĠĠ Ġget () Ġ= Ġmanifest Properties . getProperty ( K LIB _ PROPERTY _ PACKAGE ) Ċ Ċ val ĠKotlin Library . export Forward Declarations ĊĠĠĠ Ġget () Ġ= Ġmanifest Properties . property List ( K LIB _ PROPERTY _ EXPORT _ FORWARD _ DECL AR ATIONS , Ġescape In Quotes Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ. as Sequence () ĊĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . trim () Ġ} ĊĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . isNotEmpty () Ġ} ĊĠĠĠĠĠĠĠ Ġ. toList () Ċ