@@ -40,7 +40,10 @@ use crate::{
4040 } ,
4141 stats:: Stats ,
4242 store:: {
43- ciphertext:: { memory:: MemoryCiphertextStore , CausalDecryptionState , CiphertextStore } ,
43+ ciphertext:: {
44+ memory:: MemoryCiphertextStore , CausalDecryptionState , CiphertextStore ,
45+ CiphertextStoreExt ,
46+ } ,
4447 delegation:: DelegationStore ,
4548 revocation:: RevocationStore ,
4649 } ,
@@ -82,7 +85,7 @@ pub struct Keyhive<
8285 S : AsyncSigner < F > + Clone ,
8386 T : ContentRef = [ u8 ; 32 ] ,
8487 P : for < ' de > Deserialize < ' de > = Vec < u8 > ,
85- C : CiphertextStore < T , P > + Clone = MemoryCiphertextStore < T , P > ,
88+ C : CiphertextStore < F , T , P > + CiphertextStoreExt < F , T , P > + Clone = MemoryCiphertextStore < T , P > ,
8689 L : MembershipListener < F , S , T > = NoListener ,
8790 R : rand:: CryptoRng = rand:: rngs:: OsRng ,
8891> {
@@ -129,7 +132,7 @@ impl<
129132 S : AsyncSigner < F > + Clone ,
130133 T : ContentRef ,
131134 P : for < ' de > Deserialize < ' de > ,
132- C : CiphertextStore < T , P > + Clone ,
135+ C : CiphertextStore < F , T , P > + CiphertextStoreExt < F , T , P > + Clone ,
133136 L : MembershipListener < F , S , T > ,
134137 R : rand:: CryptoRng + rand:: RngCore ,
135138 > Keyhive < F , S , T , P , C , L , R >
@@ -529,7 +532,7 @@ impl<
529532 & self ,
530533 doc : Arc < Mutex < Document < F , S , T , L > > > ,
531534 encrypted : & EncryptedContent < P , T > ,
532- ) -> Result < CausalDecryptionState < T , P > , DocCausalDecryptionError < T , P , C > >
535+ ) -> Result < CausalDecryptionState < T , P > , DocCausalDecryptionError < F , T , P , C > >
533536 where
534537 T : for < ' de > Deserialize < ' de > ,
535538 P : Serialize + Clone ,
@@ -562,6 +565,7 @@ impl<
562565 }
563566
564567 #[ instrument( skip_all) ]
568+ #[ allow( clippy:: type_complexity) ]
565569 pub async fn reachable_members (
566570 & self ,
567571 membered : Membered < F , S , T , L > ,
@@ -597,6 +601,7 @@ impl<
597601 caps
598602 }
599603
604+ #[ allow( clippy:: type_complexity) ]
600605 #[ instrument( skip_all) ]
601606 pub async fn membered_reachable_by_agent (
602607 & self ,
@@ -1181,6 +1186,7 @@ impl<
11811186 None
11821187 }
11831188
1189+ #[ allow( clippy:: type_complexity) ]
11841190 #[ instrument( skip_all) ]
11851191 pub async fn static_event_to_event (
11861192 & self ,
@@ -1209,6 +1215,7 @@ impl<
12091215 }
12101216 }
12111217
1218+ #[ allow( clippy:: type_complexity) ]
12121219 #[ instrument( skip_all) ]
12131220 async fn static_delegation_to_delegation (
12141221 & self ,
@@ -2210,7 +2217,7 @@ impl<
22102217 S : AsyncSigner < F > + Clone ,
22112218 T : ContentRef + Debug ,
22122219 P : for < ' de > Deserialize < ' de > ,
2213- C : CiphertextStore < T , P > + Clone ,
2220+ C : CiphertextStore < F , T , P > + CiphertextStoreExt < F , T , P > + Clone ,
22142221 L : MembershipListener < F , S , T > ,
22152222 R : rand:: CryptoRng + rand:: RngCore ,
22162223 > Debug for Keyhive < F , S , T , P , C , L , R >
@@ -2234,7 +2241,7 @@ impl<
22342241 S : AsyncSigner < F > + Clone ,
22352242 T : ContentRef + Clone ,
22362243 P : for < ' de > Deserialize < ' de > + Clone ,
2237- C : CiphertextStore < T , P > + Clone ,
2244+ C : CiphertextStore < F , T , P > + CiphertextStoreExt < F , T , P > + Clone ,
22382245 L : MembershipListener < F , S , T > ,
22392246 R : rand:: CryptoRng + rand:: RngCore + Clone ,
22402247 > ForkAsync for Keyhive < F , S , T , P , C , L , R >
@@ -2263,7 +2270,7 @@ impl<
22632270 S : AsyncSigner < F > + Clone ,
22642271 T : ContentRef + Clone ,
22652272 P : for < ' de > Deserialize < ' de > + Clone ,
2266- C : CiphertextStore < T , P > + Clone ,
2273+ C : CiphertextStore < F , T , P > + CiphertextStoreExt < F , T , P > + Clone ,
22672274 L : MembershipListener < F , S , T > ,
22682275 R : rand:: CryptoRng + rand:: RngCore + Clone ,
22692276 > MergeAsync for Arc < Mutex < Keyhive < F , S , T , P , C , L , R > > >
@@ -2315,7 +2322,7 @@ impl<
23152322 S : AsyncSigner < F > + Clone ,
23162323 T : ContentRef ,
23172324 P : for < ' de > Deserialize < ' de > ,
2318- C : CiphertextStore < T , P > + Clone ,
2325+ C : CiphertextStore < F , T , P > + CiphertextStoreExt < F , T , P > + Clone ,
23192326 L : MembershipListener < F , S , T > ,
23202327 R : rand:: CryptoRng + rand:: RngCore ,
23212328 > Verifiable for Keyhive < F , S , T , P , C , L , R >
0 commit comments