D11946: hg-cpython: implement vcsgraph::Graph for our Index
pacien (Pacien)
phabricator at mercurial-scm.org
Tue Dec 21 15:06:43 UTC 2021
pacien created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D11946
AFFECTED FILES
rust/hg-cpython/src/cindex.rs
CHANGE DETAILS
diff --git a/rust/hg-cpython/src/cindex.rs b/rust/hg-cpython/src/cindex.rs
--- a/rust/hg-cpython/src/cindex.rs
+++ b/rust/hg-cpython/src/cindex.rs
@@ -155,6 +155,24 @@
}
}
+impl vcsgraph::graph::Graph for Index {
+ fn parents(
+ &self,
+ rev: Revision,
+ ) -> Result<vcsgraph::graph::Parents, vcsgraph::graph::GraphReadError>
+ {
+ match Graph::parents(self, rev) {
+ Ok(parents) => Ok(vcsgraph::graph::Parents(parents)),
+ Err(GraphError::ParentOutOfRange(rev)) => {
+ Err(vcsgraph::graph::GraphReadError::KeyedInvalidKey(rev))
+ }
+ Err(GraphError::WorkingDirectoryUnsupported) => Err(
+ vcsgraph::graph::GraphReadError::WorkingDirectoryUnsupported,
+ ),
+ }
+ }
+}
+
impl RevlogIndex for Index {
/// Note C return type is Py_ssize_t (hence signed), but we shall
/// force it to unsigned, because it's a length
To: pacien, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
More information about the Mercurial-devel
mailing list