comindly-api 0.5.0-beta.9

comindly's API: the requests and answers of an engine's /api/v1, shared by the engine and the command line.
Documentation
use std::borrow::Cow;

use serde::{Deserialize, Serialize};

use crate::conventions::{Convention, Manual};
use crate::ledger::Entry;
use crate::manifests::InternalDep;
use crate::model::{Edge, Symbol};

/// The parts of an index a server sends a client; the client rebuilds the rest.
#[derive(Serialize, Deserialize)]
pub struct View<'a> {
    pub symbols: Cow<'a, [Symbol]>,
    pub edges: Cow<'a, [Edge]>,
    /// Ledger entries with the status and trust the server derived.
    pub entries: Cow<'a, [Entry]>,
    pub conventions: Cow<'a, [Convention]>,
    pub manual: Cow<'a, [Manual]>,
    pub deps: Cow<'a, [InternalDep]>,
    pub problem: Option<String>,
}