1#![deny(unsafe_code)]
2#![allow(missing_docs)]
3
4pub mod async_optimizations;
17pub mod commands;
18pub mod config;
19pub mod node_manager;
20pub mod output;
21pub mod peer_manager;
22pub mod performance;
23pub mod rpc;
24pub mod startup;
25
26#[cfg(test)]
27pub mod mocks;
28
29pub use commands::{
30 check_node_connectivity, execute_status_command, show_status, start_node, stop_node,
31 CommandRouter, DagStatistics, MemoryUsage, NetworkStatistics, NodeState, NodeStatusResponse,
32 OutputFormat, PeerStatusInfo, StatusArgs,
33};
34
35pub use config::{NodeConfig, NodeConfigManager};
36
37#[derive(Debug, thiserror::Error)]
39pub enum CliError {
40 #[error("Node error: {0}")]
41 Node(String),
42 #[error("Network error: {0}")]
43 Network(String),
44 #[error("Visualization error: {0}")]
45 Visualization(String),
46 #[error("Configuration error: {0}")]
47 Config(String),
48 #[error("Command error: {0}")]
49 Command(String),
50 #[error("RPC error: {0}")]
51 Rpc(String),
52 #[error("Status error: {0}")]
53 Status(String),
54 #[error("Connection error: {0}")]
55 Connection(String),
56 #[error("Timeout error: {0}")]
57 Timeout(String),
58 #[error("Validation error: {0}")]
59 Validation(String),
60}