/* Ċ Ġ* Ġ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 . fir . analysis . check ers . expression Ċ Ċ import Ġorg . jetbrains . kotlin . fir . F ir Fake Source Element Kind Ċ import Ġorg . jetbrains . kotlin . fir . analysis . check ers . context . Checker Context Ċ import Ġorg . jetbrains . kotlin . fir . analysis . diagnostics . Diagnostic Reporter Ċ import Ġorg . jetbrains . kotlin . fir . analysis . diagnostics . F ir Errors Ċ import Ġorg . jetbrains . kotlin . fir . analysis . diagnostics . report On Ċ import Ġorg . jetbrains . kotlin . fir . expressions . F ir Function Call Ċ import Ġorg . jetbrains . kotlin . fir . references . F ir Error Named Reference Ċ import Ġorg . jetbrains . kotlin . fir . resolve . diagnostics . Con e Un resolved Name Error Ċ import Ġorg . jetbrains . kotlin . util . Operator Name Con ventions Ċ Ċ object ĠF ir Convention Function Call Checker Ġ: ĠF ir Function Call Checker () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġcheck ( expression : ĠF ir Function Call , Ġcontext : ĠCheck er Context , Ġreporter : ĠDiagnostic Reporter ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcal lee Reference Ġ= Ġexpression . callee Reference Ġas ? ĠF ir Error Named Reference Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġdiagnostic Ġ= Ġcal lee Reference . diagnostic Ġas ? ĠC one Un resolved Name Error Ġ?: Ġreturn ĊĊĠĠĠĠĠĠĠ Ġif Ġ( expression . callee Reference . source ?. kind Ġ== ĠF ir Fake Source Element Kind . Array Access Name Reference ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( diagnostic . name ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOperator Name Con ventions . GET Ġ-> Ġreporter . report On ( callee Reference . source , ĠF ir Errors . NO _ GET _ METHOD , Ġcontext ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOperator Name Con ventions . SET Ġ-> Ġreporter . report On ( callee Reference . source , ĠF ir Errors . NO _ SET _ METHOD , Ġcontext ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ