git_record/lib.rs
1//! Supporting library for
2//! [git-branchless](https://github.com/arxanas/git-branchless).
3//!
4//! This is a UI component to interactively select changes to include in a
5//! commit. It's meant to be embedded in source control tooling.
6//!
7//! You can think of this as an interactive replacement for `git add -p`, or a
8//! reimplementation of `hg crecord`. Given a set of changes made by the user,
9//! this component presents them to the user and lets them select which of those
10//! changes should be staged for commit.
11
12#![warn(missing_docs)]
13#![warn(clippy::all, clippy::as_conversions, clippy::clone_on_ref_ptr)]
14#![allow(clippy::too_many_arguments, clippy::blocks_in_if_conditions)]
15
16mod cursive_utils;
17mod tristate;
18mod types;
19mod ui;
20
21pub use cursive_utils::testing;
22pub use types::{FileState, RecordError, RecordState, Section, SectionChangedLine};
23pub use ui::Recorder;