e2e-protection 0.3.0

End-to-End protection core with pluggable profiles. AUTOSAR (P11/P22) profile family is optional via feature
Documentation
//! e2e-protection (Core + pluggable profiles; no mod.rs files)
// --- Quick start (doctest with autosar gated) ---
//! ### Quick start
//! ```rust
//! # #[cfg(feature = "autosar")] {
//! use e2e_protection::{E2eProfile, E2eSession, CounterPolicy};
//! use e2e_protection::profiles::autosar::Profile11;
//!
//! let mut tx = E2eSession::new(
//!     Profile11::preset_sae_j1850(0x0042),
//!     CounterPolicy::MonotonicRollover { bits: 8, step: 1 },
//! );
//! let frame = tx.wrap(&[0x12, 0x34, 0x56, 0x78]).unwrap();
//!
//! let mut rx = E2eSession::new(
//!     Profile11::preset_sae_j1850(0x0042),
//!     CounterPolicy::MonotonicRollover { bits: 8, step: 1 },
//! );
//! let payload = rx.unwrap(&frame).unwrap();
//! assert_eq!(payload, &[0x12, 0x34, 0x56, 0x78]);
//! # }
//! ```

// Internal/core modules
mod crc; // internal CRC engine (not re-exported)
mod e2e;

// Public surface
pub use e2e::{CheckInfo, E2eError, CounterPolicy, E2eProfile, E2eSession};

// Profiles entry (Always visible, each family is controlled by feature)
pub mod profiles;