rust/hg-pyo3/src/revlog/mod.rs
changeset 52804 6c6cfb89a4f1
parent 52803 3bfd80a277be
child 52805 a8debfd85d55
equal deleted inserted replaced
52803:3bfd80a277be 52804:6c6cfb89a4f1
   415         self_ref.docket.take();
   415         self_ref.docket.take();
   416         self_ref.nodemap_mmap.take();
   416         self_ref.nodemap_mmap.take();
   417         self_ref.head_revs_py_list.take();
   417         self_ref.head_revs_py_list.take();
   418         self_ref.head_node_ids_py_list.take();
   418         self_ref.head_node_ids_py_list.take();
   419         Ok(())
   419         Ok(())
       
   420     }
       
   421 
       
   422     /// return the raw binary string representing a revision
       
   423     fn _index_entry_binary(
       
   424         slf: &Bound<'_, Self>,
       
   425         rev: PyRevision,
       
   426     ) -> PyResult<Py<PyBytes>> {
       
   427         let rev: UncheckedRevision = rev.into();
       
   428         Self::with_index_read(slf, |idx| {
       
   429             idx.check_revision(rev)
       
   430                 .and_then(|r| idx.entry_binary(r))
       
   431                 .map(|rust_bytes| PyBytes::new(slf.py(), rust_bytes).unbind())
       
   432                 .ok_or_else(|| rev_not_in_index(rev))
       
   433         })
   420     }
   434     }
   421 
   435 
   422     /// return a binary packed version of the header
   436     /// return a binary packed version of the header
   423     fn _index_pack_header(
   437     fn _index_pack_header(
   424         slf: &Bound<'_, Self>,
   438         slf: &Bound<'_, Self>,