Common/Library.rs
1//! # Common Crate
2//!
3//! Defines the abstract architectural core for the entire application
4//! ecosystem. It provides the foundational traits, services, and data transfer
5//! objects (DTOs) that constitute the application's public API contract.
6//!
7//! This crate enforces a clean separation of concerns by defining "what" an
8//! operation does (the service trait, e.g., `FileSystemReader`) separately
9//! from "how" it is implemented (the concrete implementation in the `Mountain`
10//! crate). This declarative, effects-based architecture ensures that
11//! application logic is composable, testable, and maintainable.
12
13#![allow(non_snake_case, non_camel_case_types)]
14
15// --- Core Architecture ---
16pub mod Effect;
17
18pub mod Environment;
19
20pub mod Error;
21
22pub mod Utility;
23
24// --- Service Contracts (alphabetical) ---
25pub mod Command;
26
27pub mod Configuration;
28
29pub mod CustomEditor;
30
31pub mod Debug;
32
33pub mod Diagnostic;
34
35pub mod Document;
36
37pub mod ExtensionManagement;
38
39pub mod FileSystem;
40
41pub mod IPC;
42
43pub mod Keybinding;
44
45pub mod LanguageFeature;
46
47pub mod Output;
48
49pub mod Search;
50
51pub mod Secret;
52
53pub mod SourceControlManagement;
54
55pub mod StatusBar;
56
57pub mod Storage;
58
59pub mod Synchronization;
60
61pub mod Terminal;
62
63pub mod Testing;
64
65pub mod TreeView;
66
67pub mod UserInterface;
68
69pub mod WebView;
70
71pub mod WorkSpace;
72
73// --- Global DTO Module ---
74//
75// A top-level module that re-exports all Data Transfer Objects (DTOs) from the
76// various service modules for convenient access across the application.
77pub mod DTO;