photon_backend/backend/mod.rs
1//! Backend implementations and assembly context for Photon.
2
3mod capabilities;
4mod context;
5mod generic;
6mod photon_backend;
7
8pub use capabilities::BackendCapabilities;
9pub use context::BackendContext;
10pub use generic::GenericPhotonBackend;
11pub use photon_backend::PhotonBackend;
12
13/// Back-compat alias for the default in-process `mem` tier [`GenericPhotonBackend`].
14///
15/// Prefer [`PhotonBuilder::storage_port`](https://docs.rs/uf-photon/latest/photon/struct.PhotonBuilder.html#method.storage_port)
16/// (or the default mem path) for normal hosts. Use
17/// [`GenericPhotonBackend::install_mem`](crate::GenericPhotonBackend::install_mem) /
18/// [`PhotonBuilder::mem_backend`](https://docs.rs/uf-photon/latest/photon/struct.PhotonBuilder.html#method.mem_backend)
19/// when you need an explicit install fn.
20///
21/// # Example
22///
23/// ```rust,ignore
24/// use photon_backend::{BackendContext, EmbeddedBackend};
25/// use photon_runtime::Photon;
26///
27/// let _photon = Photon::builder()
28/// .backend_with_context(|ctx: BackendContext| EmbeddedBackend::install_mem(ctx))
29/// .auto_registry()
30/// .build()?;
31/// ```
32pub type EmbeddedBackend = GenericPhotonBackend;