##// END OF EJS Templates
rust-status: refactor status into a struct...
rust-status: refactor status into a struct The code for `dirstate/status` has grown too large for comfort, this is the first of three patches that try to improve maintainability. In this patch, refactoring dirstate's status into a struct allows for slimming down function signatures drastically, keeping the mental (and maintenance) burden lower, since pretty much all of them shared a few common arguments. This had the pleasant side-effect of simplifying lifetimes a little. This has no observable impact on performance. The next patch will add/improve documentation and refactor some types. I tried to keep new code down to a minimum in this patch because it's already pretty big. Differential Revision: https://phab.mercurial-scm.org/D8661

File last commit:

r45502:5965efb6 default
r45671:7528699c default
Show More
mod.rs
12 lines | 433 B | application/rls-services+xml | RustLexer
mod find_root;
pub use find_root::{FindRoot, FindRootError, FindRootErrorKind};
/// An interface for high-level hg operations.
///
/// A distinction is made between operation and commands.
/// An operation is what can be done whereas a command is what is exposed by
/// the cli. A single command can use several operations to achieve its goal.
pub trait Operation<T> {
type Error;
fn run(&self) -> Result<T, Self::Error>;
}