pub struct SupplementDescriptor {
pub summary: &'static str,
pub schema: Option<&'static str>,
pub diagnostic_codes: &'static [&'static str],
pub requires: &'static [&'static str],
}Expand description
Self-reported metadata about what a supplement validates and declares —
colocated in the same module as the parse_and_validate_*/validate()
logic that actually produces diagnostic_codes, so a change to one is a
scroll away from the other, not a separate hand-maintained copy in a
different crate. etdl capabilities/etdl supplement list read this
generically (ExtensionRegistry::list/lookup + descriptor())
instead of each caller hard-coding a per-supplement summary — see
crate::performance’s descriptor() for the reference shape every
built-in supplement follows.
Fields§
§summary: &'static strOne-line human summary of what this supplement validates/declares.
Empty (the default) for an extension that doesn’t override
EtdlExtension::descriptor — e.g. a dynamically loaded .wasm
plugin, whose wire ABI (docs/reference/supplement-plugins.md)
carries no description field to report here.
schema: Option<&'static str>The schema/version string this supplement’s x-* field is
versioned against (e.g. "etdl.performance/1.0"), if it has one
distinct from EtdlExtension::version().
diagnostic_codes: &'static [&'static str]Every diagnostic code this supplement’s own validation can produce.
requires: &'static [&'static str]Other supplement ids this one has a real dependency on, if any (e.g.
etdl.security on etdl.tree-event — see crate::security’s
module docs for what “dependency” means in practice here).
Trait Implementations§
Source§impl Clone for SupplementDescriptor
impl Clone for SupplementDescriptor
Source§fn clone(&self) -> SupplementDescriptor
fn clone(&self) -> SupplementDescriptor
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more