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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
//! sqry-core: Core library for semantic code search
//!
//! This library provides the foundational components for sqry, a semantic code search tool
//! that understands code structure through AST analysis.
//!
//! # Architecture
//!
//! The library is organized into several key modules:
//!
//! - **search**: Core search engine and pattern matching
//! - **ast**: AST parsing and querying
//! - **indexing**: Incremental hashing and index compression utilities
//! - **cache**: Caching layer for performance
//! - **session**: Session-level caching for warm multi-query execution
//! - **plugin**: Plugin system for language extensibility
//! - **output**: Output formatters (text, JSON)
//!
//! # Example
//!
//! ```rust,ignore
//! use sqry_core::search::SearchEngine;
//!
//! let engine = SearchEngine::new();
//! let results = engine.search("pattern", "path/to/code")?;
//! ```
//!
//! # Status
//!
//! This library is under active development (Phase 0). APIs are subject to change.
/// Core search functionality
/// AST parsing and querying
/// Error types for programmatic tool integration
/// Configuration module (buffer sizes, tuning parameters)
/// JSON response types for programmatic tool integration
/// I/O utilities for efficient file operations
/// BLAKE3 hashing utilities for cache module
/// Caching layer
/// Indexing utilities (incremental hashing, compression)
/// Progress reporting for indexing and graph builds
/// Session management for multi-query caching
/// File system watcher for CLI watch mode
/// Plugin system for language extensibility
/// Shared metadata constants for language plugins
/// Metadata normalization for backward compatibility
/// Query language for AST-aware code search
/// Workspace registry and discovery utilities
/// Visualization helpers (graph exporters for DOT, D2, Mermaid, JSON)
/// Output formatting (text, JSON, diagrams)
/// On-disk persistence helpers (atomic-write, snapshot I/O primitives)
/// Unified graph architecture for cross-language code analysis
/// Canonical schema types (single source of truth for semantic enums)
/// Shared relation extraction infrastructure for language plugins
/// Git integration for change tracking
/// Project root lifecycle management (per PROJECT_ROOT_SPEC.md)
/// Confidence metadata for analysis results
/// Local uses and insights (privacy-respecting behavioral capture)
///
/// This module provides anonymous usage pattern collection that stays entirely local.
/// All data uses strongly-typed enums - no arbitrary strings can leak.
/// Users can disable via config, environment, or by building without the feature.
// NOTE: The original hybrid embeddings path (embeddings/vector/security
// modules and related features) has been removed from the codebase. Natural language
// support is provided exclusively via the NL→SQRY translation interface described in
// docs/development/-nl-translation/01_SPEC.md.
/// Common types and utilities
/// Test support utilities (verbose logging, artifacts)
///
/// This module provides testing infrastructure including environment-variable
/// driven logging and test artifact generation. It's designed to be zero-overhead
/// when not in use and completely opt-in via environment variables.
///
/// See module documentation for usage examples.
/// Re-exports for convenience
pub use ;
pub use ;