##// END OF EJS Templates
rust-index: add Sync bound to all relevant mmap-derived values...
Raphaël Gomès -
r52126:ca81cd96 default
parent child Browse files
Show More
@@ -85,7 +85,7 b' impl IndexHeader {'
85 85 /// happened. This makes it transparent for the callers.
86 86 struct IndexData {
87 87 /// Immutable bytes, most likely taken from disk
88 bytes: Box<dyn Deref<Target = [u8]> + Send>,
88 bytes: Box<dyn Deref<Target = [u8]> + Send + Sync>,
89 89 /// Used when stripping index contents, keeps track of the start of the
90 90 /// first stripped revision, which is used to give a slice of the
91 91 /// `bytes` field.
@@ -95,7 +95,7 b' struct IndexData {'
95 95 }
96 96
97 97 impl IndexData {
98 pub fn new(bytes: Box<dyn Deref<Target = [u8]> + Send>) -> Self {
98 pub fn new(bytes: Box<dyn Deref<Target = [u8]> + Send + Sync>) -> Self {
99 99 Self {
100 100 bytes,
101 101 truncation: None,
@@ -328,7 +328,7 b' impl Index {'
328 328 /// Create an index from bytes.
329 329 /// Calculate the start of each entry when is_inline is true.
330 330 pub fn new(
331 bytes: Box<dyn Deref<Target = [u8]> + Send>,
331 bytes: Box<dyn Deref<Target = [u8]> + Send + Sync>,
332 332 default_header: IndexHeader,
333 333 ) -> Result<Self, HgError> {
334 334 let header =
@@ -520,7 +520,7 b' unsafe fn mmap_keeparound('
520 520 data: PyObject,
521 521 ) -> PyResult<(
522 522 PyBuffer,
523 Box<dyn std::ops::Deref<Target = [u8]> + Send + 'static>,
523 Box<dyn std::ops::Deref<Target = [u8]> + Send + Sync + 'static>,
524 524 )> {
525 525 let buf = PyBuffer::get(py, &data)?;
526 526 let len = buf.item_count();
General Comments 0
You need to be logged in to leave comments. Login now