Skip to main content

dcrypt_api/
lib.rs

1//! Public API traits and types for the dcrypt library
2//!
3//! This crate provides the public API surface for the dcrypt ecosystem, including
4//! trait definitions, error types, and common types used throughout the library.
5
6#![cfg_attr(not(feature = "std"), no_std)]
7#![forbid(unsafe_code)]
8
9#[cfg(not(feature = "std"))]
10extern crate alloc;
11
12pub mod error;
13pub mod traits;
14pub mod types;
15
16// Re-export commonly used items at the crate level for convenience
17pub use error::{Error, Result};
18pub use types::*;
19
20// Re-export all traits from the traits module
21pub use traits::{
22    AuthenticatedCipher, BlockCipher, HashAlgorithm, Kem, KeyDerivationFunction, Serialize,
23    Signature, StreamCipher, SymmetricCipher,
24};
25
26// Re-export trait modules for direct access
27pub use traits::{kem, serialize, signature, symmetric};