worker_sys/ext/
cache_storage.rs

1use wasm_bindgen::prelude::*;
2
3mod glue {
4    use super::*;
5
6    #[wasm_bindgen]
7    extern "C" {
8        #[wasm_bindgen]
9        pub type CacheStorage;
10
11        #[wasm_bindgen(method, catch, getter)]
12        pub fn default(this: &CacheStorage) -> Result<web_sys::Cache, JsValue>;
13    }
14}
15
16pub trait CacheStorageExt {
17    fn default(&self) -> web_sys::Cache;
18}
19
20impl CacheStorageExt for web_sys::CacheStorage {
21    fn default(&self) -> web_sys::Cache {
22        self.unchecked_ref::<glue::CacheStorage>()
23            .default()
24            .unwrap()
25    }
26}