Mercurial > public > mercurial-scm > hg
annotate rust/hg-cpython/src/dirstate/copymap.rs @ 48674:f7086f6173f8 stable
dirstate-v2: rename the configuration to enable the format
The rename of the old experimental name was overlooked before the 6.0 release.
We rename everything to use the new name (and keep the released name as an alias
for compatibility).
Differential Revision: https://phab.mercurial-scm.org/D12129
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 01 Feb 2022 16:36:20 +0100 |
parents | bf8837e3d7ce |
children | db065b33fa56 |
rev | line source |
---|---|
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
1 // copymap.rs |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
2 // |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
3 // Copyright 2019 Raphaël Gomès <rgomes@octobus.net> |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
4 // |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
5 // This software may be used and distributed according to the terms of the |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
6 // GNU General Public License version 2 or any later version. |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
7 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
8 //! Bindings for `hg::dirstate::dirstate_map::CopyMap` provided by the |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
9 //! `hg-core` package. |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
10 |
44234
bad4e7b361d2
rust-cpython: switch to upstreamed version of PySharedRefCell
Yuya Nishihara <yuya@tcha.org>
parents:
43422
diff
changeset
|
11 use cpython::{ |
bad4e7b361d2
rust-cpython: switch to upstreamed version of PySharedRefCell
Yuya Nishihara <yuya@tcha.org>
parents:
43422
diff
changeset
|
12 PyBytes, PyClone, PyDict, PyObject, PyResult, Python, UnsafePyLeaked, |
bad4e7b361d2
rust-cpython: switch to upstreamed version of PySharedRefCell
Yuya Nishihara <yuya@tcha.org>
parents:
43422
diff
changeset
|
13 }; |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
14 use std::cell::RefCell; |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
15 |
47335
ed1583a845d2
dirstate-v2: Make more APIs fallible, returning Result
Simon Sapin <simon.sapin@octobus.net>
parents:
47124
diff
changeset
|
16 use crate::dirstate::dirstate_map::v2_error; |
43177
5cb8867c9e2b
rust-cpython: move $leaked struct out of macro
Yuya Nishihara <yuya@tcha.org>
parents:
42957
diff
changeset
|
17 use crate::dirstate::dirstate_map::DirstateMap; |
48068
bf8837e3d7ce
dirstate: Remove the flat Rust DirstateMap implementation
Simon Sapin <simon.sapin@octobus.net>
parents:
47335
diff
changeset
|
18 use hg::dirstate::CopyMapIter; |
47335
ed1583a845d2
dirstate-v2: Make more APIs fallible, returning Result
Simon Sapin <simon.sapin@octobus.net>
parents:
47124
diff
changeset
|
19 use hg::dirstate_tree::on_disk::DirstateV2ParseError; |
47124
cd8ca38fccff
rust: Use `&HgPath` instead of `&HgPathBuf` in may APIs
Simon Sapin <simon.sapin@octobus.net>
parents:
44973
diff
changeset
|
20 use hg::utils::hg_path::HgPath; |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
21 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
22 py_class!(pub class CopyMap |py| { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
23 data dirstate_map: DirstateMap; |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
24 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
25 def __getitem__(&self, key: PyObject) -> PyResult<PyBytes> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
26 (*self.dirstate_map(py)).copymapgetitem(py, key) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
27 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
28 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
29 def __len__(&self) -> PyResult<usize> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
30 self.dirstate_map(py).copymaplen(py) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
31 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
32 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
33 def __contains__(&self, key: PyObject) -> PyResult<bool> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
34 self.dirstate_map(py).copymapcontains(py, key) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
35 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
36 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
37 def get( |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
38 &self, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
39 key: PyObject, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
40 default: Option<PyObject> = None |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
41 ) -> PyResult<Option<PyObject>> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
42 self.dirstate_map(py).copymapget(py, key, default) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
43 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
44 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
45 def pop( |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
46 &self, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
47 key: PyObject, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
48 default: Option<PyObject> = None |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
49 ) -> PyResult<Option<PyObject>> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
50 self.dirstate_map(py).copymappop(py, key, default) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
51 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
52 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
53 def __iter__(&self) -> PyResult<CopyMapKeysIterator> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
54 self.dirstate_map(py).copymapiter(py) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
55 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
56 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
57 // Python's `dict()` builtin works with either a subclass of dict |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
58 // or an abstract mapping. Said mapping needs to implement `__getitem__` |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
59 // and `keys`. |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
60 def keys(&self) -> PyResult<CopyMapKeysIterator> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
61 self.dirstate_map(py).copymapiter(py) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
62 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
63 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
64 def items(&self) -> PyResult<CopyMapItemsIterator> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
65 self.dirstate_map(py).copymapitemsiter(py) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
66 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
67 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
68 def iteritems(&self) -> PyResult<CopyMapItemsIterator> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
69 self.dirstate_map(py).copymapitemsiter(py) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
70 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
71 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
72 def __setitem__( |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
73 &self, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
74 key: PyObject, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
75 item: PyObject |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
76 ) -> PyResult<()> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
77 self.dirstate_map(py).copymapsetitem(py, key, item)?; |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
78 Ok(()) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
79 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
80 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
81 def copy(&self) -> PyResult<PyDict> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
82 self.dirstate_map(py).copymapcopy(py) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
83 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
84 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
85 }); |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
86 |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
87 impl CopyMap { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
88 pub fn from_inner(py: Python, dm: DirstateMap) -> PyResult<Self> { |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
89 Self::create_instance(py, dm) |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
90 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
91 fn translate_key( |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
92 py: Python, |
47335
ed1583a845d2
dirstate-v2: Make more APIs fallible, returning Result
Simon Sapin <simon.sapin@octobus.net>
parents:
47124
diff
changeset
|
93 res: Result<(&HgPath, &HgPath), DirstateV2ParseError>, |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
94 ) -> PyResult<Option<PyBytes>> { |
47335
ed1583a845d2
dirstate-v2: Make more APIs fallible, returning Result
Simon Sapin <simon.sapin@octobus.net>
parents:
47124
diff
changeset
|
95 let (k, _v) = res.map_err(|e| v2_error(py, e))?; |
ed1583a845d2
dirstate-v2: Make more APIs fallible, returning Result
Simon Sapin <simon.sapin@octobus.net>
parents:
47124
diff
changeset
|
96 Ok(Some(PyBytes::new(py, k.as_bytes()))) |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
97 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
98 fn translate_key_value( |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
99 py: Python, |
47335
ed1583a845d2
dirstate-v2: Make more APIs fallible, returning Result
Simon Sapin <simon.sapin@octobus.net>
parents:
47124
diff
changeset
|
100 res: Result<(&HgPath, &HgPath), DirstateV2ParseError>, |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
101 ) -> PyResult<Option<(PyBytes, PyBytes)>> { |
47335
ed1583a845d2
dirstate-v2: Make more APIs fallible, returning Result
Simon Sapin <simon.sapin@octobus.net>
parents:
47124
diff
changeset
|
102 let (k, v) = res.map_err(|e| v2_error(py, e))?; |
42957
7a01778bc7b7
rust-hgpath: replace all paths and filenames with HgPath/HgPathBuf
Rapha?l Gom?s <rgomes@octobus.net>
parents:
42889
diff
changeset
|
103 Ok(Some(( |
44973
26114bd6ec60
rust: do a clippy pass
Rapha?l Gom?s <rgomes@octobus.net>
parents:
44234
diff
changeset
|
104 PyBytes::new(py, k.as_bytes()), |
26114bd6ec60
rust: do a clippy pass
Rapha?l Gom?s <rgomes@octobus.net>
parents:
44234
diff
changeset
|
105 PyBytes::new(py, v.as_bytes()), |
42957
7a01778bc7b7
rust-hgpath: replace all paths and filenames with HgPath/HgPathBuf
Rapha?l Gom?s <rgomes@octobus.net>
parents:
42889
diff
changeset
|
106 ))) |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
107 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
108 } |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
109 |
42889
ea91a126c803
rust-cpython: rename py_shared_iterator_impl to py_shared_iterator
Yuya Nishihara <yuya@tcha.org>
parents:
42888
diff
changeset
|
110 py_shared_iterator!( |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
111 CopyMapKeysIterator, |
44234
bad4e7b361d2
rust-cpython: switch to upstreamed version of PySharedRefCell
Yuya Nishihara <yuya@tcha.org>
parents:
43422
diff
changeset
|
112 UnsafePyLeaked<CopyMapIter<'static>>, |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
113 CopyMap::translate_key, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
114 Option<PyBytes> |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
115 ); |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
116 |
42889
ea91a126c803
rust-cpython: rename py_shared_iterator_impl to py_shared_iterator
Yuya Nishihara <yuya@tcha.org>
parents:
42888
diff
changeset
|
117 py_shared_iterator!( |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
118 CopyMapItemsIterator, |
44234
bad4e7b361d2
rust-cpython: switch to upstreamed version of PySharedRefCell
Yuya Nishihara <yuya@tcha.org>
parents:
43422
diff
changeset
|
119 UnsafePyLeaked<CopyMapIter<'static>>, |
42754
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
120 CopyMap::translate_key_value, |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
121 Option<(PyBytes, PyBytes)> |
4e8f504424f3
rust-dirstate: rust-cpython bridge for dirstatemap
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff
changeset
|
122 ); |