Skip to main content

navcore_routes/
lib.rs

1//! Routes, kept where every client can reach them.
2//!
3//! A route is an ordered plan through several positions. A standalone
4//! waypoint ([`waypoints`]) is one place independent of any route; the
5//! two are siblings, not one a part of the other. This is the only
6//! crate that manages, publishes and loads routes: every client is
7//! meant to call the functions here rather than each holding a second
8//! copy of this logic.
9//!
10//! This crate keeps no local copy of a route -- see [`signalk`]'s own
11//! doc for why. A [`Route`] value exists here only as long as it takes
12//! to hand it to or read it from [`signalk`]; there is no database, no
13//! cache, and nothing to go stale.
14//!
15//! [`waypoints`]: https://docs.rs/waypoints
16
17#![forbid(unsafe_code)]
18
19pub mod plan;
20pub mod signalk;
21
22pub use plan::{Route, Waypoint};