Mercurial > public > mercurial-scm > hg
view rust/hg-core/src/operations/mod.rs @ 45862:5c736ba5dc27
rust-status: don't bubble up os errors, translate them to bad matches
In the rare cases when either the OS/filesystem throws an error on an otherwise
valid action, or because a path is not representable on the filesystem, or
because of concurrent actions in the filesystem, we want to warn the user about
said path instead of bubbling up the error, causing an exception to be raised
in the Python layer.
Differential Revision: https://phab.mercurial-scm.org/D9320
author | Rapha?l Gom?s <rgomes@octobus.net> |
---|---|
date | Mon, 16 Nov 2020 16:38:57 +0100 |
parents | 522ec3dc44b9 |
children | dca9cb99971c |
line wrap: on
line source
//! A distinction is made between operations 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. mod cat; mod debugdata; mod dirstate_status; mod find_root; mod list_tracked_files; pub use cat::{CatRev, CatRevError, CatRevErrorKind}; pub use debugdata::{ DebugData, DebugDataError, DebugDataErrorKind, DebugDataKind, }; pub use find_root::{FindRoot, FindRootError, FindRootErrorKind}; pub use list_tracked_files::{ ListDirstateTrackedFiles, ListDirstateTrackedFilesError, ListDirstateTrackedFilesErrorKind, }; pub use list_tracked_files::{ ListRevTrackedFiles, ListRevTrackedFilesError, ListRevTrackedFilesErrorKind, }; // TODO add an `Operation` trait when GAT have landed (rust #44265): // there is no way to currently define a trait which can both return // references to `self` and to passed data, which is what we would need. // Generic Associated Types may fix this and allow us to have a unified // interface.