/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 2 1 Ġ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 . analysis . api . descriptors . symbols . pointers Ċ Ċ import Ġorg . jetbrains . kotlin . analysis . api . Kt Analysis Session Ċ import Ġorg . jetbrains . kotlin . analysis . api . descriptors . Kt Fe 1 0 Analysis Session Ċ import Ġorg . jetbrains . kotlin . analysis . api . descriptors . symbols . descriptor Based . base . get Symbol Pointer Signature Ċ import Ġorg . jetbrains . kotlin . analysis . api . descriptors . symbols . descriptor Based . base . to Kt Callable Symbol Ċ import Ġorg . jetbrains . kotlin . analysis . api . symbols . Kt Function Like Symbol Ċ import Ġorg . jetbrains . kotlin . analysis . api . symbols . pointers . Kt Symbol Pointer Ċ import Ġorg . jetbrains . kotlin . descriptors . Callable Member Descriptor Ċ import Ġorg . jetbrains . kotlin . descriptors . find Class Ac ross Module Dependencies Ċ import Ġorg . jetbrains . kotlin . name . Callable Id Ċ import Ġorg . jetbrains . kotlin . name . Class Id Ċ import Ġorg . jetbrains . kotlin . resolve . scopes . Descriptor Kind Filter Ċ import Ġorg . jetbrains . kotlin . resolve . scopes . Member Scope Ċ Ċ class ĠK t Fe 1 0 Desc Function Like Symbol Pointer < T Ġ: ĠK t Function Like Symbol >( ĊĠĠĠ Ġprivate Ġval Ġcallable Id : ĠCallable Id , ĊĠĠĠ Ġprivate Ġval Ġsignature : ĠString Ċ ) Ġ: ĠK t Symbol Pointer < T >() Ġ{ ĊĠĠĠ Ġ@ Deprecated (" Consider Ġusing Ġorg . jetbrains . kotlin . analysis . api . Kt Analysis Session . restore Symbol ") ĊĠĠĠ Ġoverride Ġfun Ġrestore Symbol ( analysis Session : ĠK t Analysis Session ): ĠT ? Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck ( analysis Session Ġis ĠK t Fe 1 0 Analysis Session ) ĊĊĠĠĠĠĠĠĠ Ġval ĠclassName Ġ= Ġcallable Id . className ĊĠĠĠĠĠĠĠ Ġval Ġmember Scope Ġ= Ġif Ġ( className Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġouter Class Id Ġ= ĠClass Id ( callable Id . packageName , ĠclassName , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġanalysis Session . resolve Session . module Descriptor . find Class Ac ross Module Dependencies ( outer Class Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . un subst it uted Member Scope ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: ĠMember Scope . Empty ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġanalysis Session . resolve Session . module Descriptor . get Package ( callable Id . packageName ). member Scope ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠĠĠĠĠ Ġreturn Ġmember Scope ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. get Cont ributed Descriptors ( Descriptor Kind Filter . CALL ABLE S ) Ġ{ Ġit Ġ== Ġcallable Id . callable Name Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Is Instance < Callable Member Descriptor >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. first OrNull Ġ{ Ġit . get Symbol Pointer Signature ( analysis Session ) Ġ== Ġsignature Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Kt Callable Symbol ( analysis Session ) Ġas ? ĠT ĊĠĠĠ Ġ} Ċ }