Skip to main content

tfhe/integer/backward_compatibility/
list_compression.rs

1use crate::integer::ciphertext::{
2    CompressedNoiseSquashingCompressionKey, CompressedSquashedNoiseCiphertextList,
3    NoiseSquashingCompressionKey, NoiseSquashingCompressionPrivateKey,
4};
5use crate::integer::compression_keys::{
6    CompressedCompressionKey, CompressedDecompressionKey, CompressionKey, CompressionPrivateKeys,
7    DecompressionKey,
8};
9use tfhe_versionable::deprecation::{Deprecable, Deprecated};
10use tfhe_versionable::VersionsDispatch;
11
12#[derive(VersionsDispatch)]
13pub enum CompressionKeyVersions {
14    V0(CompressionKey),
15}
16
17#[derive(VersionsDispatch)]
18pub enum DecompressionKeyVersions {
19    V0(DecompressionKey),
20}
21
22impl Deprecable for CompressedCompressionKey {
23    const TYPE_NAME: &'static str = "CompressedCompressionKey";
24    const MIN_SUPPORTED_APP_VERSION: &'static str = "TFHE-rs v0.10";
25}
26
27#[derive(VersionsDispatch)]
28pub enum CompressedCompressionKeyVersions {
29    V0(Deprecated<CompressedCompressionKey>),
30    V1(Deprecated<CompressedCompressionKey>),
31    V2(CompressedCompressionKey),
32}
33
34impl Deprecable for CompressedDecompressionKey {
35    const TYPE_NAME: &'static str = "CompressedDecompressionKey";
36    const MIN_SUPPORTED_APP_VERSION: &'static str = "TFHE-rs v0.10";
37}
38
39#[derive(VersionsDispatch)]
40pub enum CompressedDecompressionKeyVersions {
41    V0(Deprecated<CompressedDecompressionKey>),
42    V1(CompressedDecompressionKey),
43}
44
45#[derive(VersionsDispatch)]
46pub enum CompressionPrivateKeysVersions {
47    V0(CompressionPrivateKeys),
48}
49
50#[derive(VersionsDispatch)]
51pub enum NoiseSquashingCompressionKeyVersions {
52    V0(NoiseSquashingCompressionKey),
53}
54
55#[derive(VersionsDispatch)]
56pub enum NoiseSquashingCompressionPrivateKeyVersions {
57    V0(NoiseSquashingCompressionPrivateKey),
58}
59
60#[derive(VersionsDispatch)]
61pub enum CompressedNoiseSquashingCompressionKeyVersions {
62    V0(CompressedNoiseSquashingCompressionKey),
63}
64
65#[derive(VersionsDispatch)]
66pub enum CompressedSquashedNoiseCiphertextListVersions {
67    V0(CompressedSquashedNoiseCiphertextList),
68}