Skip to main content

Manifest

Struct Manifest 

Source
pub struct Manifest {
    pub chartlet: &'static str,
    pub schema_version: u8,
    pub spec_hash: String,
    pub output_hash: String,
    pub format: RenderFormat,
    pub variant: Variant,
    pub id_prefix: String,
    pub view: Option<String>,
    pub views: Vec<String>,
    pub perspective: Option<String>,
    pub theme: Option<String>,
    pub warnings: Vec<ChartWarning>,
}
Expand description

The provenance of one render: which version of chartlet produced which output from which specification, with which options and warnings. It carries no timestamp, so the same render always yields the same manifest.

Fields§

§chartlet: &'static str

The version of the chartlet crate that rendered.

§schema_version: u8§spec_hash: String

sha256: and the hexadecimal SHA-256 of the canonical specification: the parsed specification serialized again, so key order and whitespace of the input do not matter.

§output_hash: String

sha256: and the hexadecimal SHA-256 of RenderOutput::content as UTF-8.

§format: RenderFormat§variant: Variant§id_prefix: String

The ID prefix the chart was rendered with: the one passed in, or the one derived from the specification. The mobile variant appends -m to it, the print variant -p, the social variant -s.

§view: Option<String>

The key of the view of an architecture model that was rendered; None for a specification without views. spec_hash is the hash of the whole model.

§views: Vec<String>

The keys of the views of an architecture model shown on one page with RenderOptions::all_views, in the order of the page; empty otherwise.

§perspective: Option<String>

The key of the perspective of an architecture diagram that was shown; None without one.

§theme: Option<String>

The theme a host applied to the specification before rendering: the name of a bundled theme or the path of a theme file. The compiler renders the themed specification and does not know it; the CLI sets it. None without one.

§warnings: Vec<ChartWarning>

Implementations§

Source§

impl Manifest

Source

pub fn to_json(&self) -> String

The manifest as a pretty-printed JSON object, its keys in a fixed order: chartlet, schemaVersion, specHash, outputHash, format, variant, idPrefix, view (only when a view was rendered), views (only when all views were rendered on one page), perspective (only when one was shown), theme (only when a host applied one), warnings (each with code, path, message).

§Panics

Never: every field is a string, a number or a list of strings.

Trait Implementations§

Source§

impl Clone for Manifest

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Manifest

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for Manifest

Source§

impl PartialEq for Manifest

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Manifest

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.