pub struct PeerAdvisors {
pub feature: String,
pub adapter: String,
pub capabilities: Vec<String>,
}Expand description
How linked mesh runtimes become advisors: those carrying feature, with these
capabilities, through this adapter.
use majordomus_cli::reasoning::catalogue::{AdvisorCatalogue, PeerAdvisors};
let c: AdvisorCatalogue = majordomus_cli::metadata::yaml::parse_into(
"version: 1\npeers:\n feature: reviews\n adapter: mesh-review\n capabilities: [code_review]\n",
).unwrap();
let peers: &PeerAdvisors = c.peers.as_ref().unwrap();
assert_eq!(peers.feature, "reviews");
// a capability outside the (here empty) vocabulary is a finding
assert!(c.diagnostics(&Default::default()).iter().any(|f| f.contains("'code_review'")));Fields§
§feature: StringThe link feature a runtime must carry.
adapter: StringThe adapter that carries a request to it.
capabilities: Vec<String>The advisory capabilities a reviewing peer offers.
Trait Implementations§
Source§impl Clone for PeerAdvisors
impl Clone for PeerAdvisors
Source§fn clone(&self) -> PeerAdvisors
fn clone(&self) -> PeerAdvisors
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PeerAdvisors
impl Debug for PeerAdvisors
Source§impl<'de> Deserialize<'de> for PeerAdvisors
impl<'de> Deserialize<'de> for PeerAdvisors
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for PeerAdvisors
impl JsonSchema for PeerAdvisors
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for PeerAdvisors
impl RefUnwindSafe for PeerAdvisors
impl Send for PeerAdvisors
impl Sync for PeerAdvisors
impl Unpin for PeerAdvisors
impl UnsafeUnpin for PeerAdvisors
impl UnwindSafe for PeerAdvisors
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more