/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 2 0 ĠJetBrains Ġs . r . o . Ġand ĠKotlin ĠProgramming ĠLanguage Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin . ir . serialization Ċ Ċ import Ġorg . jetbrains . kotlin . backend . common . serialization . Ir Declaration Deserializer Ċ import Ġorg . jetbrains . kotlin . backend . common . serialization . Ir Flags Ċ import Ġorg . jetbrains . kotlin . descriptors . Descriptor Visibility Ċ import Ġorg . jetbrains . kotlin . descriptors . Inline Class Representation Ċ import Ġorg . jetbrains . kotlin . descriptors . Modal ity Ċ import Ġorg . jetbrains . kotlin . ir . declarations . Ir Declaration Origin Ċ import Ġorg . jetbrains . kotlin . ir . declarations . Ir Variable Ċ import Ġorg . jetbrains . kotlin . ir . expressions . Ir Block Body Ċ import Ġorg . jetbrains . kotlin . ir . expressions . Ir Body Ċ import Ġorg . jetbrains . kotlin . ir . expressions . Ir Constructor Call Ċ import Ġorg . jetbrains . kotlin . ir . expressions . Ir Expression Body Ċ import Ġorg . jetbrains . kotlin . ir . symbols .* Ċ import Ġorg . jetbrains . kotlin . ir . types . Ir Simple Type Ċ import Ġorg . jetbrains . kotlin . ir . types . Ir Type Ċ import Ġorg . jetbrains . kotlin . serialization . de serialization . Proto Enum Flags Ċ import Ġorg . jetbrains . kotlin . serialization . de serialization . descriptor Visibility Ċ import Ġorg . jetbrains . kotlin . backend . common . serialization . proto . Ir Constructor Call Ġas ĠProto Ir Constructor Call Ċ import Ġorg . jetbrains . kotlin . backend . common . serialization . proto . Ir Inline Class Representation Ġas ĠProto Ir Inline Class Representation Ċ import Ġorg . jetbrains . kotlin . backend . common . serialization . proto . Ir Variable Ġas ĠProto Ir Variable Ċ Ċ internal Ġclass ĠIr Carrier Deserializer Impl ( ĊĠĠĠ Ġval Ġdeclaration Deserializer : ĠIr Declaration Deserializer , ĊĠĠĠ Ġval Ġindex To Body : Ġ( Int ) Ġ-> ĠIr Body , ĊĠĠĠ Ġval Ġindex To Expression Body : Ġ( Int ) Ġ-> ĠIr Expression Body Ċ ) Ġ: ĠIr Carrier Deserializer () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Parent Symbol ( proto : ĠLong ): ĠIr Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Origin ( proto : ĠInt ): ĠIr Declaration Origin Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . deserialize Ir Declaration Origin ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Annotation ( proto : ĠProto Ir Constructor Call ): ĠIr Constructor Call Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . body Deserializer . deserialize Annotation ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Body ( proto : ĠInt ): ĠIr Body Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġindex To Body ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Block Body ( proto : ĠInt ): ĠIr Block Body Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġindex To Body ( proto ) Ġas ĠIr Block Body ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Expression Body ( proto : ĠInt ): ĠIr Expression Body Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġindex To Expression Body ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Value Parameter ( proto : ĠLong ): ĠIr Value Parameter Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) Ġas ĠIr Value Parameter Symbol ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Type Parameter ( proto : ĠLong ): ĠIr Type Parameter Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) Ġas ĠIr Type Parameter Symbol ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Super Type ( proto : ĠInt ): ĠIr Type Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . deserialize Ir Type ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Type ( proto : ĠInt ): ĠIr Type Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . deserialize Ir Type ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Class ( proto : ĠLong ): ĠIr Class Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) Ġas ĠIr Class Symbol ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Property Symbol ( proto : ĠLong ): ĠIr Property Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) Ġas ĠIr Property Symbol ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Simple Function ( proto : ĠLong ): ĠIr Simple Function Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) Ġas ĠIr Simple Function Symbol ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Simple Function Symbol ( proto : ĠLong ): ĠIr Simple Function Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) Ġas ĠIr Simple Function Symbol ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Field ( proto : ĠLong ): ĠIr Field Symbol Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . symbol Deserializer . deserialize Ir Symbol ( proto ) Ġas ĠIr Field Symbol ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Variable ( proto : ĠProto Ir Variable ): ĠIr Variable Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . deserialize Ir Variable ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Visibility ( proto : ĠLong ): ĠDescriptor Visibility Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠProto Enum Flags . descriptor Visibility ( Ir Flags . VIS IBILITY . get ( proto . toInt ())) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Modal ity ( proto : ĠLong ): ĠMod ality Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠProto Enum Flags . modal ity ( Ir Flags . MOD AL ITY . get ( proto . toInt ())) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Inline Class Representation ( proto : ĠProto Ir Inline Class Representation ): ĠInline Class Representation < Ir Simple Type > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdeclaration Deserializer . deserialize Inline Class Representation ( proto ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Is External Class ( proto : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠIr Flags . IS _ EXTERNAL _ CLASS . get ( proto . toInt ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Is External Field ( proto : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠIr Flags . IS _ EXTERNAL _ FIELD . get ( proto . toInt ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Is External Function ( proto : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠIr Flags . IS _ EXTERNAL _ FUNCTION . get ( proto . toInt ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize Is External Property ( proto : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠIr Flags . IS _ EXTERNAL _ PROPERTY . get ( proto . toInt ()) ĊĠĠĠ Ġ} Ċ } Ċ