Skip to content
This repository was archived by the owner on Apr 4, 2023. It is now read-only.

Commit 0b767ad

Browse files
committed
Revert "fix clippy warnings"
This reverts commit a1ce3cd.
1 parent a1ce3cd commit 0b767ad

29 files changed

+135
-120
lines changed

cli/src/main.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ fn indexing_callback(step: milli::update::UpdateIndexingStep, bars: &[ProgressBa
200200
fn documents_from_jsonl(reader: impl Read) -> Result<Vec<u8>> {
201201
let mut writer = Cursor::new(Vec::new());
202202
let mut documents =
203-
milli::documents::DocumentsBuilder::new(&mut writer)?;
203+
milli::documents::DocumentsBuilder::new(&mut writer, bimap::BiHashMap::new())?;
204204

205205
let values = serde_json::Deserializer::from_reader(reader)
206206
.into_iter::<serde_json::Map<String, serde_json::Value>>();
@@ -216,7 +216,7 @@ fn documents_from_jsonl(reader: impl Read) -> Result<Vec<u8>> {
216216
fn documents_from_json(reader: impl Read) -> Result<Vec<u8>> {
217217
let mut writer = Cursor::new(Vec::new());
218218
let mut documents =
219-
milli::documents::DocumentsBuilder::new(&mut writer)?;
219+
milli::documents::DocumentsBuilder::new(&mut writer, bimap::BiHashMap::new())?;
220220

221221
let json: serde_json::Value = serde_json::from_reader(reader)?;
222222
documents.add_documents(json)?;
@@ -228,7 +228,7 @@ fn documents_from_json(reader: impl Read) -> Result<Vec<u8>> {
228228
fn documents_from_csv(reader: impl Read) -> Result<Vec<u8>> {
229229
let mut writer = Cursor::new(Vec::new());
230230
let mut documents =
231-
milli::documents::DocumentsBuilder::new(&mut writer)?;
231+
milli::documents::DocumentsBuilder::new(&mut writer, bimap::BiHashMap::new())?;
232232

233233
let mut records = csv::Reader::from_reader(reader);
234234
let iter = records.deserialize::<Map<String, Value>>();

http-ui/src/main.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1020,7 +1020,7 @@ async fn main() -> anyhow::Result<()> {
10201020
fn documents_from_jsonl(reader: impl io::Read) -> anyhow::Result<Vec<u8>> {
10211021
let mut writer = Cursor::new(Vec::new());
10221022
let mut documents =
1023-
milli::documents::DocumentsBuilder::new(&mut writer)?;
1023+
milli::documents::DocumentsBuilder::new(&mut writer, bimap::BiHashMap::new())?;
10241024

10251025
let values = serde_json::Deserializer::from_reader(reader)
10261026
.into_iter::<serde_json::Map<String, serde_json::Value>>();
@@ -1036,7 +1036,7 @@ fn documents_from_jsonl(reader: impl io::Read) -> anyhow::Result<Vec<u8>> {
10361036
fn documents_from_json(reader: impl io::Read) -> anyhow::Result<Vec<u8>> {
10371037
let mut writer = Cursor::new(Vec::new());
10381038
let mut documents =
1039-
milli::documents::DocumentsBuilder::new(&mut writer)?;
1039+
milli::documents::DocumentsBuilder::new(&mut writer, bimap::BiHashMap::new())?;
10401040

10411041
let json: serde_json::Value = serde_json::from_reader(reader)?;
10421042
documents.add_documents(json)?;
@@ -1048,7 +1048,7 @@ fn documents_from_json(reader: impl io::Read) -> anyhow::Result<Vec<u8>> {
10481048
fn documents_from_csv(reader: impl io::Read) -> anyhow::Result<Vec<u8>> {
10491049
let mut writer = Cursor::new(Vec::new());
10501050
let mut documents =
1051-
milli::documents::DocumentsBuilder::new(&mut writer)?;
1051+
milli::documents::DocumentsBuilder::new(&mut writer, bimap::BiHashMap::new())?;
10521052

10531053
let mut records = csv::Reader::from_reader(reader);
10541054
let iter = records.deserialize::<Map<String, Value>>();

milli/src/documents/builder.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,23 @@
11
use std::io;
22

3+
use bimap::BiHashMap;
34
use byteorder::{BigEndian, WriteBytesExt};
45
use serde::ser::Serialize;
56

67
use super::serde::DocumentsSerilializer;
7-
use super::{ByteCounter, DocumentsMetadata, Error, AdditionIndex};
8+
use super::{ByteCounter, DocumentsMetadata, Error};
9+
use crate::FieldId;
810

911
pub struct DocumentsBuilder<W> {
1012
serializer: DocumentsSerilializer<W>,
1113
}
1214

1315
impl<W: io::Write + io::Seek> DocumentsBuilder<W> {
14-
pub fn new(writer: W) -> Result<Self, Error> {
16+
pub fn new(writer: W, index: BiHashMap<FieldId, String>) -> Result<Self, Error> {
1517
let mut writer = ByteCounter::new(writer);
1618
// add space to write the offset of the metadata at the end of the writer
1719
writer.write_u64::<BigEndian>(0)?;
1820

19-
let index = AdditionIndex::new();
2021
let serializer =
2122
DocumentsSerilializer { writer, buffer: Vec::new(), index, count: 0, allow_seq: true };
2223

milli/src/documents/mod.rs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,10 @@ pub use reader::DocumentsReader;
1616

1717
use crate::FieldId;
1818

19-
type AdditionIndex = BiHashMap<FieldId, String>;
20-
2119
#[derive(Debug, Serialize, Deserialize)]
2220
struct DocumentsMetadata {
2321
count: usize,
24-
index: AdditionIndex,
22+
index: BiHashMap<FieldId, String>,
2523
}
2624

2725
pub struct ByteCounter<W> {
@@ -91,7 +89,7 @@ macro_rules! documents {
9189
let documents = serde_json::json!($data);
9290
let mut writer = std::io::Cursor::new(Vec::new());
9391
let mut builder =
94-
crate::documents::DocumentsBuilder::new(&mut writer).unwrap();
92+
crate::documents::DocumentsBuilder::new(&mut writer, bimap::BiHashMap::new()).unwrap();
9593
builder.add_documents(documents).unwrap();
9694
builder.finish().unwrap();
9795

@@ -122,7 +120,7 @@ mod test {
122120
let mut v = Vec::new();
123121
let mut cursor = io::Cursor::new(&mut v);
124122

125-
let mut builder = DocumentsBuilder::new(&mut cursor).unwrap();
123+
let mut builder = DocumentsBuilder::new(&mut cursor, BiHashMap::new()).unwrap();
126124

127125
builder.add_documents(json).unwrap();
128126

@@ -151,7 +149,7 @@ mod test {
151149
let mut v = Vec::new();
152150
let mut cursor = io::Cursor::new(&mut v);
153151

154-
let mut builder = DocumentsBuilder::new(&mut cursor).unwrap();
152+
let mut builder = DocumentsBuilder::new(&mut cursor, BiHashMap::new()).unwrap();
155153

156154
builder.add_documents(doc1).unwrap();
157155
builder.add_documents(doc2).unwrap();
@@ -180,7 +178,7 @@ mod test {
180178
let mut v = Vec::new();
181179
let mut cursor = io::Cursor::new(&mut v);
182180

183-
let mut builder = DocumentsBuilder::new(&mut cursor).unwrap();
181+
let mut builder = DocumentsBuilder::new(&mut cursor, BiHashMap::new()).unwrap();
184182

185183
builder.add_documents(docs).unwrap();
186184

@@ -203,7 +201,7 @@ mod test {
203201
let mut v = Vec::new();
204202
let mut cursor = io::Cursor::new(&mut v);
205203

206-
let mut builder = DocumentsBuilder::new(&mut cursor).unwrap();
204+
let mut builder = DocumentsBuilder::new(&mut cursor, BiHashMap::new()).unwrap();
207205

208206
let docs = json!([[
209207
{ "toto": false },

milli/src/documents/reader.rs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,11 @@ use std::io;
22
use std::io::{BufReader, Read};
33
use std::mem::size_of;
44

5+
use bimap::BiHashMap;
56
use byteorder::{BigEndian, ReadBytesExt};
67
use obkv::KvReader;
78

8-
use super::{DocumentsMetadata, Error, AdditionIndex};
9+
use super::{DocumentsMetadata, Error};
910
use crate::FieldId;
1011

1112
pub struct DocumentsReader<R> {
@@ -38,9 +39,9 @@ impl<R: io::Read + io::Seek> DocumentsReader<R> {
3839

3940
/// Returns the next document in the reader, and wraps it in an `obkv::KvReader`, along with a
4041
/// reference to the addition index.
41-
pub fn next_document_with_index(
42-
&mut self,
43-
) -> io::Result<Option<(&AdditionIndex, KvReader<FieldId>)>> {
42+
pub fn next_document_with_index<'a>(
43+
&'a mut self,
44+
) -> io::Result<Option<(&'a BiHashMap<FieldId, String>, KvReader<'a, FieldId>)>> {
4445
if self.seen_documents < self.metadata.count {
4546
let doc_len = self.reader.read_u32::<BigEndian>()?;
4647
self.buffer.resize(doc_len as usize, 0);
@@ -55,7 +56,7 @@ impl<R: io::Read + io::Seek> DocumentsReader<R> {
5556
}
5657

5758
/// Return the fields index for the documents batch.
58-
pub fn index(&self) -> &AdditionIndex {
59+
pub fn index(&self) -> &BiHashMap<FieldId, String> {
5960
&self.metadata.index
6061
}
6162

milli/src/documents/serde.rs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
use std::convert::TryInto;
22
use std::{fmt, io};
33

4+
use bimap::BiHashMap;
45
use byteorder::{BigEndian, WriteBytesExt};
56
use obkv::KvWriter;
67
use serde::ser::{Impossible, Serialize, SerializeMap, SerializeSeq, Serializer};
78

8-
use super::{AdditionIndex, ByteCounter, Error};
9+
use super::{ByteCounter, Error};
910
use crate::FieldId;
1011

1112
pub struct DocumentsSerilializer<W> {
1213
pub writer: ByteCounter<W>,
1314
pub buffer: Vec<u8>,
14-
pub index: AdditionIndex,
15+
pub index: BiHashMap<FieldId, String>,
1516
pub count: usize,
1617
pub allow_seq: bool,
1718
}
@@ -224,7 +225,7 @@ impl<'a, W: io::Write> SerializeSeq for SeqSerializer<'a, W> {
224225

225226
pub struct MapSerializer<'a, W> {
226227
map: KvWriter<io::Cursor<&'a mut Vec<u8>>, FieldId>,
227-
index: &'a mut AdditionIndex,
228+
index: &'a mut BiHashMap<FieldId, String>,
228229
writer: W,
229230
buffer: Vec<u8>,
230231
}
@@ -248,7 +249,7 @@ impl<'a, W: io::Write> SerializeMap for MapSerializer<'a, W> {
248249
let data_len: u32 = data.len().try_into().map_err(|_| Error::DocumentTooLarge)?;
249250

250251
self.writer.write_u32::<BigEndian>(data_len).map_err(Error::Io)?;
251-
self.writer.write_all(data).map_err(Error::Io)?;
252+
self.writer.write_all(&data).map_err(Error::Io)?;
252253

253254
Ok(())
254255
}
@@ -276,7 +277,7 @@ impl<'a, W: io::Write> SerializeMap for MapSerializer<'a, W> {
276277
}
277278

278279
struct FieldSerializer<'a> {
279-
index: &'a mut AdditionIndex,
280+
index: &'a mut BiHashMap<FieldId, String>,
280281
}
281282

282283
impl<'a> serde::Serializer for FieldSerializer<'a> {

milli/src/fields_ids_map.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ impl FieldsIdsMap {
6565
}
6666

6767
/// Iterate over the ids in the order of the ids.
68-
pub fn ids(&self) -> impl Iterator<Item = FieldId> + '_ {
68+
pub fn ids<'a>(&'a self) -> impl Iterator<Item = FieldId> + 'a {
6969
self.ids_names.keys().copied()
7070
}
7171

milli/src/heed_codec/facet/facet_level_value_f64_codec.rs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ impl heed::BytesEncode<'_> for FacetLevelValueF64Codec {
3434
fn bytes_encode((field_id, level, left, right): &Self::EItem) -> Option<Cow<[u8]>> {
3535
let mut buffer = [0u8; 32];
3636

37-
// Write the globally ordered floats.
38-
let bytes = f64_into_bytes(*left)?;
39-
buffer[..8].copy_from_slice(&bytes[..]);
40-
4137
let len = if *level != 0 {
38+
// Write the globally ordered floats.
39+
let bytes = f64_into_bytes(*left)?;
40+
buffer[..8].copy_from_slice(&bytes[..]);
41+
4242
let bytes = f64_into_bytes(*right)?;
4343
buffer[8..16].copy_from_slice(&bytes[..]);
4444

@@ -51,6 +51,10 @@ impl heed::BytesEncode<'_> for FacetLevelValueF64Codec {
5151

5252
32 // length
5353
} else {
54+
// Write the globally ordered floats.
55+
let bytes = f64_into_bytes(*left)?;
56+
buffer[..8].copy_from_slice(&bytes[..]);
57+
5458
// Then the f64 values just to be able to read them back.
5559
let bytes = left.to_be_bytes();
5660
buffer[8..16].copy_from_slice(&bytes[..]);

milli/src/heed_codec/facet/facet_string_level_zero_value_codec.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ where
3434
type EItem = (&'a str, C::EItem);
3535

3636
fn bytes_encode((string, value): &'a Self::EItem) -> Option<Cow<[u8]>> {
37-
let value_bytes = C::bytes_encode(value)?;
37+
let value_bytes = C::bytes_encode(&value)?;
3838

3939
let mut bytes = Vec::with_capacity(2 + string.len() + value_bytes.len());
4040
encode_prefix_string(string, &mut bytes).ok()?;

milli/src/heed_codec/facet/facet_string_zero_bounds_value_codec.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,14 @@ where
6666
bytes.extend_from_slice(left.as_bytes());
6767
bytes.extend_from_slice(right.as_bytes());
6868

69-
let value_bytes = C::bytes_encode(value)?;
69+
let value_bytes = C::bytes_encode(&value)?;
7070
bytes.extend_from_slice(&value_bytes[..]);
7171

7272
Some(Cow::Owned(bytes))
7373
}
7474
None => {
7575
bytes.push(0);
76-
let value_bytes = C::bytes_encode(value)?;
76+
let value_bytes = C::bytes_encode(&value)?;
7777
bytes.extend_from_slice(&value_bytes[..]);
7878
Some(Cow::Owned(bytes))
7979
}

0 commit comments

Comments
 (0)