rust/hg-cpython/src/dirstate/dirstate_map.rs
branchstable
changeset 44428 927137fc3035
parent 44327 71e13cfd6154
child 44441 8cdd0b9629e3
equal deleted inserted replaced
44415:07b79569fdf8 44428:927137fc3035
   346         Ok(self.inner_shared(py).borrow().len())
   346         Ok(self.inner_shared(py).borrow().len())
   347     }
   347     }
   348 
   348 
   349     def __contains__(&self, key: PyObject) -> PyResult<bool> {
   349     def __contains__(&self, key: PyObject) -> PyResult<bool> {
   350         let key = key.extract::<PyBytes>(py)?;
   350         let key = key.extract::<PyBytes>(py)?;
   351         Ok(self.inner_shared(py).borrow().contains_key(HgPath::new(key.data(py))))
   351         Ok(self.inner_shared(py)
       
   352                .borrow()
       
   353                .contains_key(HgPath::new(key.data(py))))
   352     }
   354     }
   353 
   355 
   354     def __getitem__(&self, key: PyObject) -> PyResult<PyObject> {
   356     def __getitem__(&self, key: PyObject) -> PyResult<PyObject> {
   355         let key = key.extract::<PyBytes>(py)?;
   357         let key = key.extract::<PyBytes>(py)?;
   356         let key = HgPath::new(key.data(py));
   358         let key = HgPath::new(key.data(py));
   436         Ok(dict)
   438         Ok(dict)
   437     }
   439     }
   438 
   440 
   439     def copymapgetitem(&self, key: PyObject) -> PyResult<PyBytes> {
   441     def copymapgetitem(&self, key: PyObject) -> PyResult<PyBytes> {
   440         let key = key.extract::<PyBytes>(py)?;
   442         let key = key.extract::<PyBytes>(py)?;
   441         match self.inner_shared(py).borrow().copy_map.get(HgPath::new(key.data(py))) {
   443         match self.inner_shared(py)
       
   444                   .borrow()
       
   445                   .copy_map
       
   446                   .get(HgPath::new(key.data(py))) {
   442             Some(copy) => Ok(PyBytes::new(py, copy.as_ref())),
   447             Some(copy) => Ok(PyBytes::new(py, copy.as_ref())),
   443             None => Err(PyErr::new::<exc::KeyError, _>(
   448             None => Err(PyErr::new::<exc::KeyError, _>(
   444                 py,
   449                 py,
   445                 String::from_utf8_lossy(key.data(py)),
   450                 String::from_utf8_lossy(key.data(py)),
   446             )),
   451             )),