radicle/cob/store/
access.rs1pub use seal::Access;
5
6pub struct ReadOnly;
8
9pub struct WriteAs<'a, Signer> {
11 pub(super) signer: &'a Signer,
12}
13
14impl<'a, Signer> WriteAs<'a, Signer> {
15 pub fn new(signer: &'a Signer) -> Self {
16 Self { signer }
17 }
18}
19
20#[allow(private_interfaces)]
22mod seal {
23 enum Seal {}
24
25 pub trait Access {
27 fn seal(&self, _: Seal);
28 }
29
30 impl Access for super::ReadOnly {
31 fn seal(&self, _: Seal) {}
32 }
33
34 impl<Signer> Access for super::WriteAs<'_, Signer> {
35 fn seal(&self, _: Seal) {}
36 }
37}