1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//! Conditional `Send`/`Sync` bounds for traits whose wasm implementations
//! use `!Send` types (JS interop via `Rc<RefCell<...>>`, `JsValue`, etc.).
//!
//! On native targets, `MaybeSend` resolves to `Send` and `MaybeSync` to
//! `Sync`. On `wasm32` targets, both are no-ops.
//!
//! Used by traits whose implementations may hold `!Send` types on WASM:
//! [`ProxyBackend`](crate::backend::ProxyBackend),
//! [`Middleware`](crate::middleware::Middleware),
//! [`RouteHandler`](crate::route_handler::RouteHandler),
//! [`BucketRegistry`](crate::registry::BucketRegistry),
//! [`CredentialRegistry`](crate::registry::CredentialRegistry), and the
//! `oidc-provider` crate's [`HttpExchange`] / [`CredentialExchange`] traits.
// --- Native targets: MaybeSend = Send, MaybeSync = Sync ---
// --- WASM targets: MaybeSend and MaybeSync are no-ops ---