Documentation
¶
Overview ¶
Package lsp implements a Language Server Protocol server for ELPS. It provides diagnostics, hover, go-to-definition, references, completion, document symbols, and rename support.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Document ¶
type Document struct {
URI string
Version int32
Content string
// contains filtered or unexported fields
}
Document represents an open text document tracked by the LSP server.
type DocumentStore ¶
type DocumentStore struct {
// contains filtered or unexported fields
}
DocumentStore manages open documents with thread-safe access.
func NewDocumentStore ¶
func NewDocumentStore() *DocumentStore
NewDocumentStore creates an empty document store.
func (*DocumentStore) Change ¶
func (s *DocumentStore) Change(uri string, version int32, content string) *Document
Change updates a document's content (full sync) and re-parses it.
func (*DocumentStore) Close ¶
func (s *DocumentStore) Close(uri string)
Close removes a document from the store.
func (*DocumentStore) Get ¶
func (s *DocumentStore) Get(uri string) *Document
Get retrieves a document by URI. Returns nil if not found.
type Option ¶
type Option func(*Server)
Option configures the LSP server.
func WithRegistry ¶
func WithRegistry(reg *lisp.PackageRegistry) Option
WithRegistry injects an embedder's package registry for stdlib exports.