From 2ee6478ebc5273f796b0a0233e44512866679507 Mon Sep 17 00:00:00 2001 From: Kerollmops Date: Mon, 21 Apr 2025 18:50:28 +0200 Subject: [PATCH] Use a NonZeroUsize to store the prefix buffer length --- crates/milli/src/update/new/words_prefix_docids.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/crates/milli/src/update/new/words_prefix_docids.rs b/crates/milli/src/update/new/words_prefix_docids.rs index cadb678e7..4b94a3449 100644 --- a/crates/milli/src/update/new/words_prefix_docids.rs +++ b/crates/milli/src/update/new/words_prefix_docids.rs @@ -1,6 +1,7 @@ use std::cell::RefCell; use std::collections::BTreeSet; use std::io::{BufReader, BufWriter, Read, Seek, Write}; +use std::num::NonZeroUsize; use std::iter; use hashbrown::HashMap; @@ -349,7 +350,7 @@ impl<'i> WordPrefixIntegerDocids<'i> { index.push(PrefixIntegerEntry { prefix, pos, - serialized_length: Some(buffer.len()), + serialized_length: NonZeroUsize::new(buffer.len()), }); file.write_all(buffer)?; } @@ -375,7 +376,7 @@ impl<'i> WordPrefixIntegerDocids<'i> { key_buffer.extend_from_slice(&pos.to_be_bytes()); match serialized_length { Some(serialized_length) => { - buffer.resize(serialized_length, 0); + buffer.resize(serialized_length.get(), 0); file.read_exact(&mut buffer)?; self.prefix_database.remap_data_type::().put( wtxn, @@ -398,7 +399,7 @@ impl<'i> WordPrefixIntegerDocids<'i> { struct PrefixIntegerEntry<'a> { prefix: &'a str, pos: u16, - serialized_length: Option, + serialized_length: Option, } /// TODO doc