script_webcrypto/
traits.rs1use script_bindings::DomTypes;
6use script_bindings::reflector::DomObject;
7use script_bindings::tasks::TaskOnce;
8
9use crate::crypto::Crypto;
10use crate::cryptokey::CryptoKey;
11use crate::subtlecrypto::SubtleCrypto;
12
13trait_set::trait_set! {
15 pub trait Equivalence = DomTypes<
16 Crypto = Crypto<Self>,
17 CryptoKey = CryptoKey<Self>,
18 SubtleCrypto = SubtleCrypto<Self>,
19 GlobalScope: WebCryptoGlobalTrait<Self>>;
21}
22
23pub trait WebCryptoGlobalTrait<D: DomTypes>: Sized + DomObject {
24 fn queue_crypto_task_source(&self, task: impl TaskOnce + 'static);
25 fn queue_dom_manipulation_task_source(&self, task: impl TaskOnce + 'static);
26}