Expand description
§LanguageFeatureProvider (Environment)
Provides language feature intelligence through extension-hosted LSP providers. Manages provider registration, lookup, and invocation for hover, completion, definition, references, formatting, code actions, and more.
§Implementation Strategy
The trait implementation is split across multiple helper modules:
Registration: RegisterProvider, UnregisterProviderProviderLookup: GetMatchingProvider (private helper)FeatureMethods: All LSP feature methods (Hover, Completion, etc.)
The single impl LanguageFeatureProviderRegistry for MountainEnvironment
block in this file delegates to those helper functions. This satisfies
Rust’s orphan rules while keeping code organized and atomic.
Modules§
- Feature
Methods 🔒 - All LSP feature method implementations.
- Provider
Lookup 🔒 - Provider lookup and matching utilities.
- Registration 🔒
- Provider registration and unregistration logic.