Skip to main content

Crate ara_core

Crate ara_core 

Source
Expand description

ara-core: the shared core of the ARA viewer runtime.

This crate holds all parsing, normalization, binding resolution, and DAG layout for the ARA viewer. It is compiled to both native targets (used by ara-cli) and wasm32-unknown-unknown (used by the browser client), so it is the single source of truth that keeps the server and client from drifting.

See https://github.com/ARA-Labs/ara-cli.

Re-exports§

pub use layout::LayoutOptions;
pub use layout::LayoutResult;
pub use layout::NodePosition;
pub use layout::Point;
pub use layout::Rect;
pub use manifest::Binding;
pub use manifest::BindingRole;
pub use manifest::Claim;
pub use manifest::ClaimId;
pub use manifest::LinkKind;
pub use manifest::Manifest;
pub use manifest::Node;
pub use manifest::NodeFields;
pub use manifest::NodeId;
pub use manifest::NodeKind;
pub use report::Diagnostic;
pub use report::ParseReport;
pub use report::Severity;

Modules§

layout
Deterministic layered DAG layout (Sugiyama method) for Manifest.
manifest
Normalized wire types — the single manifest every downstream consumer reads.
report
Diagnostics produced by parsing/validation.

Functions§

parse_and_layout
Parses and lays out an in-memory ARA artifact.
parse_and_layout_dir
Reads, parses, and lays out an ARA artifact directory. Native only.
parse_dir
Reads trace/exploration_tree.yaml (required) and logic/claims.md (optional) from dir and normalizes them. Native only.
parse_sources
Parses in-memory sources into a Manifest. Pure and wasm-safe.
version
Returns the version of ara-core, taken from the crate manifest.