refactor(lsp): internally expose and use LspScopedResolver (#28755)

Reduces some repeat hashmap lookups by exposing the `LspScopedResolver`.
This commit is contained in:
David Sherret 2025-04-04 17:48:04 -04:00 committed by GitHub
parent 37b760e3c6
commit 9d841987ef
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 240 additions and 294 deletions

View file

@ -1135,7 +1135,9 @@ impl Inner {
spawn(async move {
let specifier = {
let inner = ls.inner.read().await;
let resolver = inner.resolver.as_cli_resolver(Some(&referrer));
let scoped_resolver =
inner.resolver.get_scoped_resolver(Some(&referrer));
let resolver = scoped_resolver.as_cli_resolver();
let Ok(specifier) = resolver.resolve(
&specifier,
&referrer,
@ -1783,8 +1785,9 @@ impl Inner {
if let Ok(jsr_req_ref) =
JsrPackageReqReference::from_specifier(specifier)
{
let scoped_resolver = self.resolver.get_scoped_resolver(scope);
if let Some(url) =
self.resolver.jsr_to_resource_url(&jsr_req_ref, scope)
scoped_resolver.jsr_to_resource_url(&jsr_req_ref)
{
result = format!("{result} (<{url}>)");
}