Skip to main content

lib_q_double_kem/
lib.rs

1#![cfg_attr(not(feature = "std"), no_std)]
2#![forbid(unsafe_code)]
3#![warn(missing_docs)]
4#![doc = include_str!("../README.md")]
5
6#[cfg(not(feature = "std"))]
7compile_error!(
8    "lib-q-double-kem currently requires the `std` feature because lib-q-ml-kem \
9depends on runtime allocator/panic support in this integration path."
10);
11
12pub mod double_kem;
13pub mod error;
14pub mod profile;
15pub mod wire;
16
17pub use double_kem::{
18    ck_fo_upgrade,
19    double_decap,
20    double_encap,
21};
22pub use error::DoubleKemError;
23pub use profile::{
24    BASELINE_DOUBLE_ML_KEM_768_CIPHERTEXT_BYTES,
25    DOUBLE_KEM_KAT_SCHEMA,
26    MAUL_HINT_BYTES,
27    MAUL_WIRE_BODY_BYTES,
28    MaulProfileV1,
29    WIRE_BUDGET_MAUL_ENCAP_BYTES,
30};
31pub use wire::MaulEncapWire;