perl_lsp_completion/lib.rs
1//! LSP completion provider for Perl
2//!
3//! This crate provides code completion functionality for Perl.
4//!
5//! ## Features
6//!
7//! - Context-aware completion
8//! - Multiple completion sources (builtins, functions, variables, etc.)
9//! - Workspace integration
10//!
11//! ## Usage
12//!
13//! ```rust,ignore
14//! use perl_lsp_completion::CompletionProvider;
15//!
16//! let provider = CompletionProvider::new(&ast, Some(&workspace_index))?;
17//! let completions = provider.get_completions(source, position)?;
18//! ```
19
20#![deny(unsafe_code)]
21#![warn(rust_2018_idioms)]
22#![warn(missing_docs)]
23#![warn(clippy::all)]
24
25mod completion;
26
27pub use completion::{
28 CompletionContext, CompletionItem, CompletionItemKind, CompletionProvider,
29 get_dbi_method_documentation, get_test_more_documentation,
30};