Skip to main content

epics_ca_rs/
lib.rs

1#![allow(
2    clippy::collapsible_if,
3    clippy::map_entry,
4    clippy::io_other_error,
5    clippy::new_without_default,
6    clippy::redundant_closure,
7    clippy::single_match,
8    clippy::type_complexity,
9    clippy::unnecessary_cast
10)]
11
12//! EPICS Channel Access protocol — client and server.
13//!
14//! This crate provides the CA wire protocol implementation,
15//! separated from the core IOC infrastructure in `epics-base-rs`.
16
17pub mod audit;
18/// CA links for record INP/OUT fields — resolves ` CA`-modified /
19/// `ca://` record link fields to a live CA client (monitor-backed
20/// cache). Mirrors C `dbCa.c` / `dbCaLink`. Always compiled: having
21/// `epics-ca-rs` is enough to resolve CA links, no feature opt-in.
22pub mod calink;
23pub mod cap_token;
24pub(crate) mod channel;
25pub mod chaos;
26pub mod cli;
27pub mod client;
28pub mod discovery;
29pub mod observability;
30pub mod protocol;
31pub mod repeater;
32pub mod replay;
33pub mod server;
34pub mod tls;
35
36// Re-export commonly used types from epics-base-rs for convenience
37pub use epics_base_rs::error::{CaError, CaResult};
38pub use epics_base_rs::runtime;
39pub use epics_base_rs::types::{DbFieldType, EpicsValue, PvString};