/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 1 8 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ċ Ġ* Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ġ*/ Ċ Ċ package Ġkotlin . native . internal Ċ Ċ import Ġkotlin . reflect . K Class Ċ Ċ @ Export For Compiler Ċ internal Ġclass ĠK Class Impl < T Ġ: ĠAny >( private Ġval Ġtype Info : ĠNative Ptr ) Ġ: ĠK Class < T > Ġ{ ĊĠĠĠ Ġoverride Ġval Ġsimple Name : ĠString ? ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrelative Name Ġ= Ġget Relative Name ( type Info ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġreturn Ġnull ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġrelative Name . substring After Last (".") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġqualified Name : ĠString ? ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠpackageName Ġ= Ġget PackageName ( type Info ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġreturn Ġnull ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrelative Name Ġ= Ġget Relative Name ( type Info ) !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( packageName . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrelative Name ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ packageName .$ relative Name " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Instance ( value : ĠAny ?): ĠBoolean Ġ= Ġvalue Ġ!= Ġnull Ġ&& Ġis Instance ( value , Ġthis . type Info ) ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġother Ġis ĠK Class Impl < *> Ġ&& Ġthis . type Info Ġ== Ġother . type Info ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ= Ġtype Info . hashCode () ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" class Ġ" Ġ+ Ġ( qualified Name Ġ?: Ġsimple Name Ġ?: Ġ"< anonymous >") ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Published Api Ċ internal Ġclass ĠK Class Unsupported Impl ( private Ġval Ġmessage : ĠString ) Ġ: ĠK Class < Any > Ġ{ ĊĠĠĠ Ġoverride Ġval Ġsimple Name : ĠString ? Ġget () Ġ= Ġerror ( message ) ĊĊĠĠĠ Ġoverride Ġval Ġqualified Name : ĠString ? Ġget () Ġ= Ġerror ( message ) ĊĊĠĠĠ Ġoverride Ġfun Ġis Instance ( value : ĠAny ?): ĠBoolean Ġ= Ġerror ( message ) ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ= Ġerror ( message ) ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ= Ġerror ( message ) ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ= Ġ" un reflect ed Ġclass Ġ($ message )" Ċ } Ċ Ċ @ Export For Compiler Ċ @ Symbol Name (" Kotlin _ Any _ getType Info ") Ċ internal Ġexternal Ġfun Ġget ObjectType Info ( obj : ĠAny ): ĠNative Ptr Ċ Ċ @ Export For Compiler Ċ @ Intr insic Ċ internal Ġexternal Ġinline Ġfun Ġ< re ified ĠT Ġ: ĠAny > ĠgetClass TypeInfo (): ĠNative Ptr Ċ Ċ @ Symbol Name (" Kotlin _ TypeInfo _ get PackageName ") Ċ private Ġexternal Ġfun Ġget PackageName ( type Info : ĠNative Ptr ): ĠString ? Ċ Ċ @ Symbol Name (" Kotlin _ TypeInfo _ get Relative Name ") Ċ private Ġexternal Ġfun Ġget Relative Name ( type Info : ĠNative Ptr ): ĠString ? Ċ Ċ @ Symbol Name (" Kotlin _ TypeInfo _ is Instance ") Ċ private Ġexternal Ġfun Ġis Instance ( obj : ĠAny , Ġtype Info : ĠNative Ptr ): ĠBoolean Ċ