pub struct DashboardSource {
pub capability: String,
pub input: Value,
pub pointer: String,
pub measure: DashboardMeasure,
}Expand description
Where a card’s value came from: the capability asked, the input it was asked with, and the pointer into its answer. Asking the capability the same question and reading the pointer with the same measure yields the card’s value; that is the whole contract.
use majordomus_cli::capability::builtin::dashboard::{DashboardMeasure, DashboardSource};
use serde_json::json;
let s: DashboardSource = serde_json::from_value(json!({
"capability": "health.report",
"input": {},
"pointer": "/status",
"measure": "exact",
})).unwrap();
assert_eq!(s.measure, DashboardMeasure::Exact);
assert_eq!(s.measure.read(&json!({ "status": "ok" }), &s.pointer), json!("ok"));Fields§
§capability: StringThe canonical id of the capability the value was read from.
input: ValueThe input it was asked with, as its input schema takes it.
pointer: StringAn RFC 6901 JSON pointer into that capability’s answer.
measure: DashboardMeasureHow the value is read at the pointer.
Trait Implementations§
Source§impl Clone for DashboardSource
impl Clone for DashboardSource
Source§fn clone(&self) -> DashboardSource
fn clone(&self) -> DashboardSource
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 DashboardSource
impl Debug for DashboardSource
Source§impl<'de> Deserialize<'de> for DashboardSource
impl<'de> Deserialize<'de> for DashboardSource
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
impl Eq for DashboardSource
Source§impl JsonSchema for DashboardSource
impl JsonSchema for DashboardSource
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 moreSource§impl PartialEq for DashboardSource
impl PartialEq for DashboardSource
Source§fn eq(&self, other: &DashboardSource) -> bool
fn eq(&self, other: &DashboardSource) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for DashboardSource
impl Serialize for DashboardSource
impl StructuralPartialEq for DashboardSource
Auto Trait Implementations§
impl Freeze for DashboardSource
impl RefUnwindSafe for DashboardSource
impl Send for DashboardSource
impl Sync for DashboardSource
impl Unpin for DashboardSource
impl UnsafeUnpin for DashboardSource
impl UnwindSafe for DashboardSource
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.