package Ġcom . github . tom asm il ata . int elli routes Ċ Ċ import Ġcom . github . tom asm il ata . int elli routes . psi . Routes TokenType Ċ import Ġcom . intellij . code Insight . navigation . actions . G oto Declaration Handler Ċ import Ġcom . intellij . openapi . action System . DataContext Ċ import Ġcom . intellij . openapi . editor . Editor Ċ import Ġcom . intellij . psi . Java Psi Facade Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . psi . impl . source . tree . Leaf Psi Element Ċ import Ġcom . intellij . psi . search . Project Scope ĊĊ Ċ class ĠRoutes G oto Controller Handler Ġ: ĠG oto Declaration Handler Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Action Text ( context : ĠData Context ?): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Go Ġto Ġcontroller Ġreference " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget G oto Declaration Targets ( source Element : ĠPsi Element ?, Ġoffset : ĠInt , Ġeditor : ĠEditor ?): ĠArray < Psi Element >? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( source Element Ġ! is ĠLeaf Psi Element Ġ|| Ġsource Element . elementType Ġ! is ĠRoutes TokenType ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠPsi Element . EMPTY _ ARRAY ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ(!( source Element . elementType Ġas ĠRoutes TokenType ). is Controller Method ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠPsi Element . EMPTY _ ARRAY ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġproject Ġ= Ġeditor ?. project !! ĊĠĠĠĠĠĠĠ Ġval Ġproject With Libraries Scope Ġ= ĠProject Scope . getAll Scope ( project ) ĊĠĠĠĠĠĠĠ Ġval Ġpsi Facade Ġ= ĠJava Psi Facade . getInstance ( project ) ĊĊĠĠĠĠĠĠĠ Ġval ĠclassName Ġ= Ġsource Element !!. text . replace ("@ ", Ġ""). substring Before Last (".") ĊĠĠĠĠĠĠĠ Ġval ĠmethodName Ġ= Ġsource Element !!. text . substring After Last (".") ĊĊĠĠĠĠĠĠĠ Ġval Ġclasses Ġ= Ġpsi Facade . find Classes ( className , Ġproject With Libraries Scope ) ĊĠĠĠĠĠĠĠ Ġreturn Ġclasses . flatMap Ġ{ Ġp Ġ-> Ġp . find Methods ByName ( methodName , Ġfalse ). map Ġ{ Ġm Ġ-> Ġm . source Element !! Ġ} Ġ}. to Typed Array () ĊĠĠĠ Ġ} Ċ }