pub trait LangResolver: Send + Sync {
// Required methods
fn language(&self) -> Language;
fn member_kinds(&self) -> &'static [&'static str];
fn call_kinds(&self) -> &'static [&'static str];
fn import_kinds(&self) -> &'static [&'static str];
// Provided method
fn type_kinds(&self) -> &'static [&'static str] { ... }
}Expand description
Per-language resolution rules. Most behavior is shared; this captures the few places grammars diverge.
Required Methods§
fn language(&self) -> Language
Sourcefn member_kinds(&self) -> &'static [&'static str]
fn member_kinds(&self) -> &'static [&'static str]
Kinds that introduce a member access whose property identifier should be
treated as a method/field (so a.b classifies b as a member).
Sourcefn call_kinds(&self) -> &'static [&'static str]
fn call_kinds(&self) -> &'static [&'static str]
Kinds that represent a call/invocation.
Sourcefn import_kinds(&self) -> &'static [&'static str]
fn import_kinds(&self) -> &'static [&'static str]
Kinds that represent an import/use statement.
Provided Methods§
Sourcefn type_kinds(&self) -> &'static [&'static str]
fn type_kinds(&self) -> &'static [&'static str]
Kinds that represent a type annotation / type reference position.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".