/* Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠMIT Ġlicense Ġthat Ġcan Ġbe Ċ Ġ* Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . rust . ide . annot ator Ċ Ċ import Ġcom . intellij . code Highlighting . Pass Ċ import Ġcom . intellij . code Insight . daemon . Line Marker Info Ċ import Ġcom . intellij . code Insight . daemon . Line Marker Provider Ċ import Ġcom . intellij . ide . Browser Util Ċ import Ġcom . intellij . openapi . editor . markup . G utter Icon Renderer Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġorg . rust . ide . icons . Rs Icons Ċ import Ġorg . rust . lang . core . psi . Rs Ex tern C rate Item Ċ import Ġorg . rust . lang . core . psi . ext . containing Cargo Package Ċ Ċ /** Ċ Ġ* ĠProvides Ġan Ġexternal Ġcrate Ġimports Ġwith Ġg utter Ġicons Ġthat Ġopen Ġdocumentation Ġon Ġdocs . rs . Ċ Ġ*/ Ċ class ĠRs C rate Doc Line Marker Provider Ġ: ĠLine Marker Provider Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Line Marker Info ( element : ĠPsi Element ): ĠLine Marker Info < Psi Element >? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġcollect Slow Line Markers ( elements : ĠList < Psi Element >, Ġresult : ĠMutable Collection < Line Marker Info < Psi Element >>) Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( el Ġin Ġelements ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcrate Item Ġ= Ġel Ġas ? ĠRs Ex tern C rate Item Ġ?: Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcrate Name Ġ= Ġcrate Item . identifier . text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcrate Ġ= Ġcrate Item . containing Cargo Package ?. find Dependency ( crate Name ) Ġ?: Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( crate . pkg . source Ġ== Ġnull ) Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult . add ( Line Marker Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcrate Item . crate , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcrate Item . crate . text Range , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRs Icons . DOCS _ MARK , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPass . LINE _ MARK ERS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġ" Open Ġdocumentation Ġfor Ġ`${ crate . pkg . norm Name }` " Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġ_, Ġ_ Ġ-> ĠBrowser Util . browse (" https :// docs . rs /${ crate . pkg . name }/${ crate . pkg . version }/${ crate . norm Name }") Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG utter Icon Renderer . Alignment . LEFT )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ