//! The history graph's lane layout is `oxy_core::lanes`, shared with `oxy //! log`; this module only adapts hex hashes from views to it. pub use oxy_core::lanes::{width, Row}; /// `changes` newest first as `(hash hex, deps hex)`. pub fn layout(changes: &[(String, Vec)]) -> Vec { let parse = |h: &str| oxy_core::hash::ObjectRef::from_hex(h).unwrap_or(oxy_core::hash::ObjectRef([0; 32])); let input: Vec<(oxy_core::hash::ChangeHash, Vec)> = changes.iter().map(|(h, d)| (parse(h), d.iter().map(|x| parse(x)).collect())).collect(); oxy_core::lanes::layout(&input) }