1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! Code completion support for the tachyonfx DSL.
//!
//! This module provides intelligent(?), context-aware code completion for DSL
//! expressions. The completion engine analyzes source code structure, tracks variable
//! bindings, and suggests appropriate completions based on cursor position.
//!
//! # Features
//!
//! - **Context-aware suggestions**: Understands namespaces, method chains, function
//! calls, and struct initialization
//! - **Fuzzy matching**: Filters completions using prefix, acronym, and subsequence
//! matching
//! - **Type tracking**: Tracks `let` bindings and suggests variables where
//! type-appropriate
//! - **Parameter hints**: Shows expected parameter types in function calls
//!
//! # Quick Start
//!
//! ```
//! use tachyonfx::dsl::CompletionEngine;
//!
//! let engine = CompletionEngine::new();
//!
//! // Get completions at cursor position
//! let source = "fx::fade";
//! let cursor_pos = source.len() as u32;
//! let completions = engine.completions(source, cursor_pos);
//!
//! // Filter to effects starting with "fade"
//! for item in completions {
//! println!("{}: {}", item.label, item.detail);
//! }
//! ```
pub use CompletionEngine;
pub use ;