Skip to main content

Module lsp

Module lsp 

Source
Expand description

Language Server Protocol implementation for QuantaLang.

This module provides full LSP support including:

  • Text document synchronization
  • Code completion
  • Hover information
  • Go to definition
  • Find references
  • Document symbols
  • Diagnostics
  • Code actions
  • Formatting

§Architecture

┌─────────────────────────────────────────────────────────────────┐
│                         LSP Server                               │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐             │
│  │   Message   │  │  Document   │  │   Symbol    │             │
│  │  Transport  │  │   Store     │  │   Index     │             │
│  └──────┬──────┘  └──────┬──────┘  └──────┬──────┘             │
│         │                │                │                     │
│         ▼                ▼                ▼                     │
│  ┌─────────────────────────────────────────────────────────┐   │
│  │                    Request Handler                       │   │
│  │  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐   │   │
│  │  │Completion│ │  Hover   │ │ GoToDef  │ │ Diagnose │   │   │
│  │  └──────────┘ └──────────┘ └──────────┘ └──────────┘   │   │
│  └─────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘

Re-exports§

pub use document::*;
pub use message::*;
pub use server::*;
pub use transport::*;
pub use types::*;

Modules§

actions
Code action provider for QuantaLang.
completion
Code completion provider for QuantaLang.
definition
Go to definition provider for QuantaLang.
diagnostics
Diagnostics provider for QuantaLang.
document
Document management for the LSP server.
hover
Hover information provider for QuantaLang.
message
JSON-RPC message types for LSP communication.
server
Main LSP server implementation.
symbols
Document symbol provider for QuantaLang.
transport
Transport layer for LSP communication over stdio.
types
Core LSP type definitions following the Language Server Protocol specification.