rust/hg-core/src/operations/mod.rs
author Antoine Cezar <antoine.cezar@octobus.net>
Sat, 08 Aug 2020 12:52:39 -0700
changeset 45379 0f5286ccf82c
parent 45378 452ece5654c5
child 45533 b56df13a0450
permissions -rw-r--r--
hg-core: define a `ListTrackedFiles` `Operation` List files under Mercurial control in the working directory. Differential Revision: https://phab.mercurial-scm.org/D8863
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
45378
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
     1
//! A distinction is made between operations and commands.
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
     2
//! An operation is what can be done whereas a command is what is exposed by
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
     3
//! the cli. A single command can use several operations to achieve its goal.
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
     4
45113
98817e5daca7 hg-core: define a `dirstate_status` `Operation`
Raphaël Gomès <rgomes@octobus.net>
parents: 45000
diff changeset
     5
mod dirstate_status;
45000
5965efb609b6 hg-core: add FindRoot operation to find repository root path
Antoine Cezar <antoine.cezar@octobus.net>
parents: 44999
diff changeset
     6
mod find_root;
45379
0f5286ccf82c hg-core: define a `ListTrackedFiles` `Operation`
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45378
diff changeset
     7
mod list_tracked_files;
45000
5965efb609b6 hg-core: add FindRoot operation to find repository root path
Antoine Cezar <antoine.cezar@octobus.net>
parents: 44999
diff changeset
     8
pub use find_root::{FindRoot, FindRootError, FindRootErrorKind};
45379
0f5286ccf82c hg-core: define a `ListTrackedFiles` `Operation`
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45378
diff changeset
     9
pub use list_tracked_files::{
0f5286ccf82c hg-core: define a `ListTrackedFiles` `Operation`
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45378
diff changeset
    10
    ListTrackedFiles, ListTrackedFilesError, ListTrackedFilesErrorKind,
0f5286ccf82c hg-core: define a `ListTrackedFiles` `Operation`
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45378
diff changeset
    11
};
45000
5965efb609b6 hg-core: add FindRoot operation to find repository root path
Antoine Cezar <antoine.cezar@octobus.net>
parents: 44999
diff changeset
    12
45378
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
    13
// TODO add an `Operation` trait when GAT have landed (rust #44265):
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
    14
// there is no way to currently define a trait which can both return
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
    15
// references to `self` and to passed data, which is what we would need.
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
    16
// Generic Associated Types may fix this and allow us to have a unified
452ece5654c5 hg-core: remove the `Operation` trait
Antoine Cezar <antoine.cezar@octobus.net>
parents: 45113
diff changeset
    17
// interface.