1#![doc(test(attr(warn(unused))))]
8#![doc(test(attr(allow(unused_variables))))]
9#![warn(clippy::pedantic)]
14#![warn(clippy::nursery)]
16#![warn(rustdoc::broken_intra_doc_links)]
17#![allow(clippy::unreadable_literal)] #![allow(clippy::doc_markdown)] #![allow(clippy::missing_panics_doc)] #![allow(clippy::cast_possible_truncation)] #![allow(clippy::similar_names)] #![allow(clippy::must_use_candidate)] #![allow(clippy::wildcard_imports)] #![allow(clippy::module_name_repetitions)] #![allow(clippy::cast_lossless)] #![allow(clippy::missing_const_for_fn)] #![allow(clippy::missing_errors_doc)] #![allow(clippy::cast_precision_loss)] #![allow(clippy::items_after_statements)] #![allow(clippy::cast_sign_loss)] #![allow(clippy::inline_always)] #![allow(clippy::many_single_char_names)] #![allow(clippy::too_many_lines)] #![allow(clippy::match_same_arms)] #![allow(clippy::range_plus_one)] #![allow(clippy::return_self_not_must_use)] #![allow(clippy::ignored_unit_patterns)] #![allow(clippy::large_types_passed_by_value)] #![allow(clippy::float_cmp)] #![allow(clippy::bool_to_int_with_if)] #![allow(clippy::unsafe_derive_deserialize)] #![allow(clippy::cast_possible_wrap)] #![allow(clippy::too_long_first_doc_paragraph)]
46#![allow(clippy::redundant_closure_for_method_calls)]
47#![allow(clippy::semicolon_if_nothing_returned)]
53#![allow(clippy::explicit_iter_loop)]
56#![allow(clippy::struct_field_names)]
59#![allow(clippy::redundant_pub_crate)] #![allow(clippy::suboptimal_flops)] #![allow(clippy::significant_drop_tightening)] #![allow(clippy::cognitive_complexity)] #![allow(clippy::iter_with_drain)] #![allow(clippy::large_stack_frames)] #![cfg_attr(feature = "__wasm_api", allow(dead_code))]
70#![cfg_attr(test, allow(clippy::large_stack_arrays))]
72
73#[cfg(feature = "__c_api")]
74pub mod c_api;
75
76#[cfg(feature = "boolean")]
77pub mod boolean;
82
83pub mod core_crypto;
88
89#[cfg(feature = "integer")]
90pub mod integer;
95
96#[cfg(feature = "shortint")]
97pub mod shortint;
102
103#[cfg(feature = "shortint")]
104pub mod transciphering;
105
106#[cfg(feature = "pbs-stats")]
107pub use shortint::server_key::pbs_stats::*;
108
109#[cfg(feature = "__wasm_api")]
110mod js_on_wasm_api;
112
113#[cfg(doctest)]
114mod test_user_docs;
115
116#[cfg(feature = "strings")]
117pub mod strings;
118
119#[cfg(feature = "integer")]
120pub(crate) mod high_level_api;
122
123#[cfg(feature = "integer")]
124pub use high_level_api::*;
125
126#[cfg(any(test, doctest, feature = "internal-keycache"))]
127pub mod keycache;
129
130pub mod conformance;
131
132pub mod error;
133#[cfg(feature = "zk-pok")]
134pub mod zk;
135
136#[cfg(any(feature = "integer", feature = "shortint"))]
137pub(crate) use error::error;
138pub use error::{Error, ErrorKind};
139pub type Result<T> = std::result::Result<T, Error>;
140
141pub use tfhe_versionable::{Unversionize, Versionize};
142
143#[cfg(feature = "hpu")]
145pub use tfhe_hpu_backend;
146
147pub mod safe_serialization {
149 pub use tfhe_safe_serialize::{
150 safe_deserialize, safe_deserialize_conformant, safe_serialize, safe_serialized_size,
151 DeserializationConfig, NonConformantDeserializationConfig, SerializationConfig,
152 };
153}
154
155pub mod named {
157 pub use tfhe_safe_serialize::Named;
158}