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
//! Vidya — programming reference library and queryable corpus
//!
//! **Vidya** (Sanskrit: विद्या — knowledge, learning) provides a curated,
//! tested, multi-language programming reference. Every concept includes
//! best practices, instructional documentation, and reference implementations
//! in multiple languages — all verified by CI.
//!
//! # Architecture
//!
//! Vidya has two layers:
//!
//! 1. **Content directory** (`content/`) — Markdown docs and source files.
//! No compilation needed. Humans can read it directly. AI models can
//! train on it. The files ARE the corpus.
//!
//! 2. **Rust crate** (this) — Queryable interface over the content.
//! Types, search, comparison, and validation. `cargo doc` generates
//! a browsable programming reference. MCP tools make it queryable
//! by agents.
//!
//! # Modules
//!
//! - [`concept`] — Core types: `Concept`, `Topic`, `Example`, `BestPractice`
//! - [`language`] — Supported languages and their metadata
//! - [`registry`] — In-memory concept registry, loaded from content directory
//! - [`loader`] — Content directory loader (TOML → Registry)
//! - [`search`] — Full-text and tag-based search across concepts
//! - [`compare`] — Side-by-side cross-language comparison
//! - [`validate`] — Compile/run verification of examples
//! - [`error`] — Error types
//!
//! # Example
//!
//! ```rust
//! use vidya::{Language, Registry};
//!
//! let registry = Registry::new();
//! // Look up string handling in Rust
//! if let Some(concept) = registry.get("strings") {
//! println!("{}", concept.description);
//! if let Some(example) = concept.example(Language::Rust) {
//! println!("{}", example.code);
//! }
//! }
//! ```
// ── Core types ─────────────────────────────────────────────────────────────
pub use ;
pub use ;
pub use Language;
pub use Registry;
// ── Operations ─────────────────────────────────────────────────────────────
pub use Comparison;
pub use ;
pub use ValidationResult;