/* Ċ Ġ* Ġ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 . k sp . processor Ċ Ċ import Ġorg . jetbrains . kotlin . k sp . getDeclared Functions Ċ import Ġorg . jetbrains . kotlin . k sp . processing . Resolver Ċ import Ġorg . jetbrains . kotlin . k sp . symbol . KS Class Declaration Ċ import Ġorg . jetbrains . kotlin . k sp . symbol . KS Function Declaration Ċ Ċ class ĠCheck Override Processor Ġ: ĠAbstract Test Processor () Ġ{ ĊĠĠĠ Ġval Ġresults Ġ= Ġmutable ListOf < String >() ĊĊĠĠĠ Ġoverride Ġfun Ġto Result (): ĠList < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġresults ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprocess ( resolver : ĠResolver ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġjava List Ġ= Ġresolver . getClass Declaration ByName ( resolver . get KS Name FromString (" Java List ")) Ġas ĠK S Class Declaration ĊĠĠĠĠĠĠĠ Ġval Ġkotlin List Ġ= Ġresolver . getClass Declaration ByName ( resolver . get KS Name FromString (" Kotlin List ")) Ġas ĠK S Class Declaration ĊĠĠĠĠĠĠĠ Ġval Ġget Fun Kt Ġ= Ġresolver . getS ymbols With Annotation (" Get Anno "). single () Ġas ĠK S Function Declaration ĊĠĠĠĠĠĠĠ Ġval Ġget Fun Java Ġ= Ġjava List . getAll Functions (). single Ġ{ Ġit . simple Name . asString () Ġ== Ġ" get " Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġfoo Fun Java Ġ= Ġjava List . getDeclared Functions (). single Ġ{ Ġit . simple Name . asString () Ġ== Ġ" foo " Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġfoo Fun Kt Ġ= Ġresolver . getS ymbols With Annotation (" Foo Anno "). single () Ġas ĠK S Function Declaration ĊĠĠĠĠĠĠĠ Ġval Ġfoo o Fun Kt Ġ= Ġresolver . getS ymbols With Annotation (" Bar Anno "). single () Ġas ĠK S Function Declaration ĊĠĠĠĠĠĠĠ Ġval Ġequal Fun Kt Ġ= Ġkotlin List . getDeclared Functions (). single Ġ{ Ġit . simple Name . asString () Ġ== Ġ" equals " Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġequal Fun Java Ġ= Ġjava List . getAll Functions (). single Ġ{ Ġit . simple Name . asString () Ġ== Ġ" equals " Ġ} ĊĠĠĠĠĠĠĠ Ġresults . add ("${ get Fun Kt . qualified Name ?. asString ()} Ġoverrides Ġ${ get Fun Java . qualified Name ?. asString ()} : Ġ${ get Fun Kt . overrides ( get Fun Java )} ") ĊĠĠĠĠĠĠĠ Ġresults . add ("${ foo Fun Kt . qualified Name ?. asString ()} Ġoverrides Ġ${ foo Fun Java . qualified Name ?. asString ()} : Ġ${ foo Fun Kt . overrides ( foo Fun Java )} ") ĊĠĠĠĠĠĠĠ Ġresults . add ("${ fo oo Fun Kt . qualified Name ?. asString ()} Ġoverrides Ġ${ foo Fun Java . qualified Name ?. asString ()} : Ġ${ fo oo Fun Kt . overrides ( foo Fun Java )} ") ĊĠĠĠĠĠĠĠ Ġresults . add ("${ equal Fun Kt . qualified Name ?. asString ()} Ġoverrides Ġ${ equal Fun Java . qualified Name ?. asString ()} : Ġ${ equal Fun Kt . overrides ( equal Fun Java )} ") ĊĠĠĠ Ġ} Ċ }