Mercurial > public > mercurial-scm > hg
comparison rust/hg-cpython/src/revlog.rs @ 43945:f98f0e3ddaa1
rust-index: add a function to convert PyObject index for hg-core
Function in hg-core need something implementing the `Graph` trait. Right now,
the `hg-cpython` entry points directly turn the PyObject passed as argument
into a `cindex::Index`. However, if we start having the option to use an Index
in Rust, we need to dispatch between the different possible PyObject we could
receive.
So move the "duplicate" call into a unified function. When time come. It will be
easy to update the logic of all interface when the time come.
Differential Revision: https://phab.mercurial-scm.org/D7653
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Fri, 13 Dec 2019 19:59:59 +0100 |
parents | |
children | b69d5f3a41d0 |
comparison
equal
deleted
inserted
replaced
43944:8a8305f557d0 | 43945:f98f0e3ddaa1 |
---|---|
1 // revlog.rs | |
2 // | |
3 // Copyright 2019 Georges Racinet <georges.racinet@octobus.net> | |
4 // | |
5 // This software may be used and distributed according to the terms of the | |
6 // GNU General Public License version 2 or any later version. | |
7 | |
8 use crate::cindex; | |
9 use cpython::{PyObject, PyResult, Python}; | |
10 | |
11 /// Return a Struct implementing the Graph trait | |
12 pub(crate) fn pyindex_to_graph( | |
13 py: Python, | |
14 index: PyObject, | |
15 ) -> PyResult<cindex::Index> { | |
16 cindex::Index::new(py, index) | |
17 } |