pub struct Capabilities {
pub plexus_rpc: &'static str,
pub plexus_auth_core: &'static str,
pub plexus_core: &'static str,
pub plexus_macros: &'static str,
pub plexus_transport: Option<&'static str>,
pub features: &'static [&'static str],
}Expand description
Compile-time capability manifest describing the subcrate versions and
feature flags bundled in this release of plexus-rpc.
Backends embed CAPABILITIES in their _info response. Synapse +
synapse-cc decode it and branch on features rather than version
strings, so adding a new feature is one entry on this struct and one
branch in tooling — no version-string parsing involved.
Capabilities is emit-only — it holds &'static slices so it can
be a const, which precludes Deserialize. Consumers should mirror
the wire shape in their own owning struct.
Fields§
§plexus_rpc: &'static strVersion of the plexus-rpc umbrella itself.
plexus_auth_core: &'static strBundled plexus-auth-core version.
plexus_core: &'static strBundled plexus-core version.
plexus_macros: &'static strBundled plexus-macros version. plexus-macros is a proc-macro
crate and cannot expose a pub const VERSION, so the umbrella’s
build script reads the dependency pin from Cargo.toml and
populates this at compile time.
plexus_transport: Option<&'static str>Bundled plexus-transport version. None when the umbrella was
built without the transport feature.
features: &'static [&'static str]Named feature flags shipped in this release. Tooling branches on these instead of parsing version strings.
Trait Implementations§
Source§impl Clone for Capabilities
impl Clone for Capabilities
Source§fn clone(&self) -> Capabilities
fn clone(&self) -> Capabilities
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more