mirror of
https://github.com/meilisearch/meilisearch.git
synced 2025-09-13 08:16:25 +00:00
Add more tests and allow disabling of soft-deletion outside of tests
Also allow disabling soft-deletion in the IndexDocumentsConfig
This commit is contained in:
@ -66,6 +66,9 @@ impl<'t, 'u, 'i> PrefixWordPairsProximityDocids<'t, 'u, 'i> {
|
||||
common_prefix_fst_words: &[&'a [String]],
|
||||
del_prefix_fst_words: &HashSet<Vec<u8>>,
|
||||
) -> Result<()> {
|
||||
println!("{new_prefix_fst_words:?}");
|
||||
println!("{common_prefix_fst_words:?}");
|
||||
println!("{del_prefix_fst_words:?}");
|
||||
index_word_prefix_database(
|
||||
self.wtxn,
|
||||
self.index.word_pair_proximity_docids,
|
||||
@ -156,30 +159,40 @@ pub fn write_into_lmdb_database_without_merging(
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use std::io::Cursor;
|
||||
use std::iter::FromIterator;
|
||||
|
||||
use roaring::RoaringBitmap;
|
||||
|
||||
use crate::db_snap;
|
||||
use crate::documents::{DocumentsBatchBuilder, DocumentsBatchReader};
|
||||
use crate::index::tests::TempIndex;
|
||||
use crate::update::{DeleteDocuments, IndexDocumentsMethod};
|
||||
|
||||
fn documents_with_enough_different_words_for_prefixes(prefixes: &[&str]) -> Vec<crate::Object> {
|
||||
fn documents_with_enough_different_words_for_prefixes(
|
||||
prefixes: &[&str],
|
||||
start_id: usize,
|
||||
) -> Vec<crate::Object> {
|
||||
let mut documents = Vec::new();
|
||||
let mut id = start_id;
|
||||
for prefix in prefixes {
|
||||
for i in 0..50 {
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": id,
|
||||
"text": format!("{prefix}{i:x}"),
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
)
|
||||
);
|
||||
id += 1;
|
||||
}
|
||||
}
|
||||
documents
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_update() {
|
||||
fn add_new_documents() {
|
||||
let mut index = TempIndex::new();
|
||||
index.index_documents_config.words_prefix_threshold = Some(50);
|
||||
index.index_documents_config.autogenerate_docids = true;
|
||||
@ -198,10 +211,11 @@ mod tests {
|
||||
DocumentsBatchReader::from_reader(Cursor::new(builder.into_inner().unwrap())).unwrap()
|
||||
};
|
||||
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["a", "be"]);
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["a", "be"], 0);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": "9000",
|
||||
"text": "At an amazing and beautiful house"
|
||||
})
|
||||
.as_object()
|
||||
@ -210,6 +224,7 @@ mod tests {
|
||||
);
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": "9001",
|
||||
"text": "The bell rings at 5 am"
|
||||
})
|
||||
.as_object()
|
||||
@ -221,10 +236,12 @@ mod tests {
|
||||
index.add_documents(documents).unwrap();
|
||||
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "initial");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "initial");
|
||||
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["am", "an"]);
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["am", "an"], 100);
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": "9002",
|
||||
"text": "At an extraordinary house"
|
||||
})
|
||||
.as_object()
|
||||
@ -239,7 +256,7 @@ mod tests {
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "update");
|
||||
}
|
||||
#[test]
|
||||
fn test_batch_bug_3043() {
|
||||
fn batch_bug_3043() {
|
||||
// https://github.com/meilisearch/meilisearch/issues/3043
|
||||
let mut index = TempIndex::new();
|
||||
index.index_documents_config.words_prefix_threshold = Some(50);
|
||||
@ -259,7 +276,7 @@ mod tests {
|
||||
DocumentsBatchReader::from_reader(Cursor::new(builder.into_inner().unwrap())).unwrap()
|
||||
};
|
||||
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["y"]);
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["y"], 0);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
@ -285,4 +302,291 @@ mod tests {
|
||||
db_snap!(index, word_prefix_pair_proximity_docids);
|
||||
db_snap!(index, prefix_word_pair_proximity_docids);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn hard_delete_and_reupdate() {
|
||||
let mut index = TempIndex::new();
|
||||
index.index_documents_config.words_prefix_threshold = Some(50);
|
||||
|
||||
index
|
||||
.update_settings(|settings| {
|
||||
settings.set_primary_key("id".to_owned());
|
||||
settings.set_searchable_fields(vec!["text".to_owned()]);
|
||||
})
|
||||
.unwrap();
|
||||
|
||||
let batch_reader_from_documents = |documents| {
|
||||
let mut builder = DocumentsBatchBuilder::new(Vec::new());
|
||||
for object in documents {
|
||||
builder.append_json_object(&object).unwrap();
|
||||
}
|
||||
DocumentsBatchReader::from_reader(Cursor::new(builder.into_inner().unwrap())).unwrap()
|
||||
};
|
||||
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["a"], 0);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9000,
|
||||
"text": "At an amazing and beautiful house"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9001,
|
||||
"text": "The bell rings at 5 am"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
|
||||
let documents = batch_reader_from_documents(documents);
|
||||
index.add_documents(documents).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "initial");
|
||||
db_snap!(index, word_docids, "initial");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "initial");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "initial");
|
||||
|
||||
let mut wtxn = index.write_txn().unwrap();
|
||||
let mut delete = DeleteDocuments::new(&mut wtxn, &index).unwrap();
|
||||
delete.disable_soft_deletion(true);
|
||||
delete.delete_documents(&RoaringBitmap::from_iter([50]));
|
||||
delete.execute().unwrap();
|
||||
wtxn.commit().unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "first_delete");
|
||||
db_snap!(index, word_docids, "first_delete");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "first_delete");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "first_delete");
|
||||
|
||||
let mut wtxn = index.write_txn().unwrap();
|
||||
let mut delete = DeleteDocuments::new(&mut wtxn, &index).unwrap();
|
||||
delete.disable_soft_deletion(true);
|
||||
delete.delete_documents(&RoaringBitmap::from_iter(0..50));
|
||||
delete.execute().unwrap();
|
||||
wtxn.commit().unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "second_delete");
|
||||
db_snap!(index, word_docids, "second_delete");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "second_delete");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "second_delete");
|
||||
|
||||
let documents = documents_with_enough_different_words_for_prefixes(&["b"], 1000);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
|
||||
index.add_documents(batch_reader_from_documents(documents)).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "reupdate");
|
||||
db_snap!(index, word_docids, "reupdate");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "reupdate");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "reupdate");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn soft_delete_and_reupdate() {
|
||||
let mut index = TempIndex::new();
|
||||
index.index_documents_config.words_prefix_threshold = Some(50);
|
||||
|
||||
index
|
||||
.update_settings(|settings| {
|
||||
settings.set_primary_key("id".to_owned());
|
||||
settings.set_searchable_fields(vec!["text".to_owned()]);
|
||||
})
|
||||
.unwrap();
|
||||
|
||||
let batch_reader_from_documents = |documents| {
|
||||
let mut builder = DocumentsBatchBuilder::new(Vec::new());
|
||||
for object in documents {
|
||||
builder.append_json_object(&object).unwrap();
|
||||
}
|
||||
DocumentsBatchReader::from_reader(Cursor::new(builder.into_inner().unwrap())).unwrap()
|
||||
};
|
||||
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["a"], 0);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9000,
|
||||
"text": "At an amazing and beautiful house"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9001,
|
||||
"text": "The bell rings at 5 am"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
|
||||
let documents = batch_reader_from_documents(documents);
|
||||
index.add_documents(documents).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "initial");
|
||||
db_snap!(index, word_docids, "initial");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "initial");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "initial");
|
||||
|
||||
let mut wtxn = index.write_txn().unwrap();
|
||||
let mut delete = DeleteDocuments::new(&mut wtxn, &index).unwrap();
|
||||
delete.delete_documents(&RoaringBitmap::from_iter([50]));
|
||||
delete.execute().unwrap();
|
||||
wtxn.commit().unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "first_delete");
|
||||
db_snap!(index, word_docids, "first_delete");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "first_delete");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "first_delete");
|
||||
|
||||
let mut wtxn = index.write_txn().unwrap();
|
||||
let mut delete = DeleteDocuments::new(&mut wtxn, &index).unwrap();
|
||||
delete.delete_documents(&RoaringBitmap::from_iter(0..50));
|
||||
delete.execute().unwrap();
|
||||
wtxn.commit().unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "second_delete");
|
||||
db_snap!(index, word_docids, "second_delete");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "second_delete");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "second_delete");
|
||||
|
||||
let documents = documents_with_enough_different_words_for_prefixes(&["b"], 1000);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
|
||||
index.add_documents(batch_reader_from_documents(documents)).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "reupdate");
|
||||
db_snap!(index, word_docids, "reupdate");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "reupdate");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "reupdate");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn replace_soft_deletion() {
|
||||
let mut index = TempIndex::new();
|
||||
index.index_documents_config.words_prefix_threshold = Some(50);
|
||||
index.index_documents_config.update_method = IndexDocumentsMethod::ReplaceDocuments;
|
||||
|
||||
index
|
||||
.update_settings(|settings| {
|
||||
settings.set_primary_key("id".to_owned());
|
||||
settings.set_searchable_fields(vec!["text".to_owned()]);
|
||||
})
|
||||
.unwrap();
|
||||
|
||||
let batch_reader_from_documents = |documents| {
|
||||
let mut builder = DocumentsBatchBuilder::new(Vec::new());
|
||||
for object in documents {
|
||||
builder.append_json_object(&object).unwrap();
|
||||
}
|
||||
DocumentsBatchReader::from_reader(Cursor::new(builder.into_inner().unwrap())).unwrap()
|
||||
};
|
||||
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["a"], 0);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9000,
|
||||
"text": "At an amazing house"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9001,
|
||||
"text": "The bell rings"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
|
||||
let documents = batch_reader_from_documents(documents);
|
||||
index.add_documents(documents).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "initial");
|
||||
db_snap!(index, word_docids, "initial");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "initial");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "initial");
|
||||
|
||||
let documents = documents_with_enough_different_words_for_prefixes(&["b"], 0);
|
||||
index.add_documents(batch_reader_from_documents(documents)).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "replaced");
|
||||
db_snap!(index, word_docids, "replaced");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "replaced");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "replaced");
|
||||
db_snap!(index, soft_deleted_documents_ids, "replaced", @"[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, ]");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn replace_hard_deletion() {
|
||||
let mut index = TempIndex::new();
|
||||
index.index_documents_config.words_prefix_threshold = Some(50);
|
||||
index.index_documents_config.disable_soft_deletion = true;
|
||||
index.index_documents_config.update_method = IndexDocumentsMethod::ReplaceDocuments;
|
||||
|
||||
index
|
||||
.update_settings(|settings| {
|
||||
settings.set_primary_key("id".to_owned());
|
||||
settings.set_searchable_fields(vec!["text".to_owned()]);
|
||||
})
|
||||
.unwrap();
|
||||
|
||||
let batch_reader_from_documents = |documents| {
|
||||
let mut builder = DocumentsBatchBuilder::new(Vec::new());
|
||||
for object in documents {
|
||||
builder.append_json_object(&object).unwrap();
|
||||
}
|
||||
DocumentsBatchReader::from_reader(Cursor::new(builder.into_inner().unwrap())).unwrap()
|
||||
};
|
||||
|
||||
let mut documents = documents_with_enough_different_words_for_prefixes(&["a"], 0);
|
||||
// now we add some documents where the text should populate the word_prefix_pair_proximity_docids database
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9000,
|
||||
"text": "At an amazing house"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
documents.push(
|
||||
serde_json::json!({
|
||||
"id": 9001,
|
||||
"text": "The bell rings"
|
||||
})
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.clone(),
|
||||
);
|
||||
|
||||
let documents = batch_reader_from_documents(documents);
|
||||
index.add_documents(documents).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "initial");
|
||||
db_snap!(index, word_docids, "initial");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "initial");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "initial");
|
||||
|
||||
let documents = documents_with_enough_different_words_for_prefixes(&["b"], 0);
|
||||
index.add_documents(batch_reader_from_documents(documents)).unwrap();
|
||||
|
||||
db_snap!(index, documents_ids, "replaced");
|
||||
db_snap!(index, word_docids, "replaced");
|
||||
db_snap!(index, word_prefix_pair_proximity_docids, "replaced");
|
||||
db_snap!(index, prefix_word_pair_proximity_docids, "replaced");
|
||||
db_snap!(index, soft_deleted_documents_ids, "replaced", @"[]");
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,20 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [101, ]
|
||||
1 a amazing [100, ]
|
||||
1 a an [100, ]
|
||||
1 a and [100, ]
|
||||
1 a beautiful [100, ]
|
||||
1 b house [100, ]
|
||||
1 b rings [101, ]
|
||||
1 be house [100, ]
|
||||
1 be rings [101, ]
|
||||
2 a am [101, ]
|
||||
2 a amazing [100, ]
|
||||
2 a and [100, ]
|
||||
2 a beautiful [100, ]
|
||||
2 a house [100, ]
|
||||
2 b at [101, ]
|
||||
2 be at [101, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 51, ]
|
@ -0,0 +1,6 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [51, ]
|
||||
2 a am [51, ]
|
||||
|
@ -0,0 +1,60 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5 [51, ]
|
||||
a0 [0, ]
|
||||
a1 [1, ]
|
||||
a10 [16, ]
|
||||
a11 [17, ]
|
||||
a12 [18, ]
|
||||
a13 [19, ]
|
||||
a14 [20, ]
|
||||
a15 [21, ]
|
||||
a16 [22, ]
|
||||
a17 [23, ]
|
||||
a18 [24, ]
|
||||
a19 [25, ]
|
||||
a1a [26, ]
|
||||
a1b [27, ]
|
||||
a1c [28, ]
|
||||
a1d [29, ]
|
||||
a1e [30, ]
|
||||
a1f [31, ]
|
||||
a2 [2, ]
|
||||
a20 [32, ]
|
||||
a21 [33, ]
|
||||
a22 [34, ]
|
||||
a23 [35, ]
|
||||
a24 [36, ]
|
||||
a25 [37, ]
|
||||
a26 [38, ]
|
||||
a27 [39, ]
|
||||
a28 [40, ]
|
||||
a29 [41, ]
|
||||
a2a [42, ]
|
||||
a2b [43, ]
|
||||
a2c [44, ]
|
||||
a2d [45, ]
|
||||
a2e [46, ]
|
||||
a2f [47, ]
|
||||
a3 [3, ]
|
||||
a30 [48, ]
|
||||
a31 [49, ]
|
||||
a4 [4, ]
|
||||
a5 [5, ]
|
||||
a6 [6, ]
|
||||
a7 [7, ]
|
||||
a8 [8, ]
|
||||
a9 [9, ]
|
||||
aa [10, ]
|
||||
ab [11, ]
|
||||
ac [12, ]
|
||||
ad [13, ]
|
||||
ae [14, ]
|
||||
af [15, ]
|
||||
am [51, ]
|
||||
at [51, ]
|
||||
bell [51, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,11 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 5 a [51, ]
|
||||
1 rings a [51, ]
|
||||
2 at a [51, ]
|
||||
2 bell a [51, ]
|
||||
3 rings a [51, ]
|
||||
3 the a [51, ]
|
||||
4 bell a [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, ]
|
@ -0,0 +1,14 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [51, ]
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a and [50, ]
|
||||
1 a beautiful [50, ]
|
||||
2 a am [51, ]
|
||||
2 a amazing [50, ]
|
||||
2 a and [50, ]
|
||||
2 a beautiful [50, ]
|
||||
2 a house [50, ]
|
||||
|
@ -0,0 +1,65 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5 [51, ]
|
||||
a0 [0, ]
|
||||
a1 [1, ]
|
||||
a10 [16, ]
|
||||
a11 [17, ]
|
||||
a12 [18, ]
|
||||
a13 [19, ]
|
||||
a14 [20, ]
|
||||
a15 [21, ]
|
||||
a16 [22, ]
|
||||
a17 [23, ]
|
||||
a18 [24, ]
|
||||
a19 [25, ]
|
||||
a1a [26, ]
|
||||
a1b [27, ]
|
||||
a1c [28, ]
|
||||
a1d [29, ]
|
||||
a1e [30, ]
|
||||
a1f [31, ]
|
||||
a2 [2, ]
|
||||
a20 [32, ]
|
||||
a21 [33, ]
|
||||
a22 [34, ]
|
||||
a23 [35, ]
|
||||
a24 [36, ]
|
||||
a25 [37, ]
|
||||
a26 [38, ]
|
||||
a27 [39, ]
|
||||
a28 [40, ]
|
||||
a29 [41, ]
|
||||
a2a [42, ]
|
||||
a2b [43, ]
|
||||
a2c [44, ]
|
||||
a2d [45, ]
|
||||
a2e [46, ]
|
||||
a2f [47, ]
|
||||
a3 [3, ]
|
||||
a30 [48, ]
|
||||
a31 [49, ]
|
||||
a4 [4, ]
|
||||
a5 [5, ]
|
||||
a6 [6, ]
|
||||
a7 [7, ]
|
||||
a8 [8, ]
|
||||
a9 [9, ]
|
||||
aa [10, ]
|
||||
ab [11, ]
|
||||
ac [12, ]
|
||||
ad [13, ]
|
||||
ae [14, ]
|
||||
af [15, ]
|
||||
am [51, ]
|
||||
amazing [50, ]
|
||||
an [50, ]
|
||||
and [50, ]
|
||||
at [50, 51, ]
|
||||
beautiful [50, ]
|
||||
bell [51, ]
|
||||
house [50, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,16 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 5 a [51, ]
|
||||
1 amazing a [50, ]
|
||||
1 an a [50, ]
|
||||
1 at a [50, ]
|
||||
1 rings a [51, ]
|
||||
2 an a [50, ]
|
||||
2 at a [50, 51, ]
|
||||
2 bell a [51, ]
|
||||
3 at a [50, ]
|
||||
3 rings a [51, ]
|
||||
3 the a [51, ]
|
||||
4 bell a [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 51, ]
|
@ -0,0 +1,6 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 b rings [51, ]
|
||||
2 b at [51, ]
|
||||
|
@ -0,0 +1,60 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5 [51, ]
|
||||
am [51, ]
|
||||
at [51, ]
|
||||
b0 [0, ]
|
||||
b1 [1, ]
|
||||
b10 [16, ]
|
||||
b11 [17, ]
|
||||
b12 [18, ]
|
||||
b13 [19, ]
|
||||
b14 [20, ]
|
||||
b15 [21, ]
|
||||
b16 [22, ]
|
||||
b17 [23, ]
|
||||
b18 [24, ]
|
||||
b19 [25, ]
|
||||
b1a [26, ]
|
||||
b1b [27, ]
|
||||
b1c [28, ]
|
||||
b1d [29, ]
|
||||
b1e [30, ]
|
||||
b1f [31, ]
|
||||
b2 [2, ]
|
||||
b20 [32, ]
|
||||
b21 [33, ]
|
||||
b22 [34, ]
|
||||
b23 [35, ]
|
||||
b24 [36, ]
|
||||
b25 [37, ]
|
||||
b26 [38, ]
|
||||
b27 [39, ]
|
||||
b28 [40, ]
|
||||
b29 [41, ]
|
||||
b2a [42, ]
|
||||
b2b [43, ]
|
||||
b2c [44, ]
|
||||
b2d [45, ]
|
||||
b2e [46, ]
|
||||
b2f [47, ]
|
||||
b3 [3, ]
|
||||
b30 [48, ]
|
||||
b31 [49, ]
|
||||
b4 [4, ]
|
||||
b5 [5, ]
|
||||
b6 [6, ]
|
||||
b7 [7, ]
|
||||
b8 [8, ]
|
||||
b9 [9, ]
|
||||
ba [10, ]
|
||||
bb [11, ]
|
||||
bc [12, ]
|
||||
bd [13, ]
|
||||
be [14, ]
|
||||
bell [51, ]
|
||||
bf [15, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 the b [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[51, ]
|
@ -0,0 +1,6 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [51, ]
|
||||
2 a am [51, ]
|
||||
|
@ -0,0 +1,10 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5 [51, ]
|
||||
am [51, ]
|
||||
at [51, ]
|
||||
bell [51, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,11 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 5 a [51, ]
|
||||
1 rings a [51, ]
|
||||
2 at a [51, ]
|
||||
2 bell a [51, ]
|
||||
3 rings a [51, ]
|
||||
3 the a [51, ]
|
||||
4 bell a [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, ]
|
@ -0,0 +1,9 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a house [50, ]
|
||||
2 a amazing [50, ]
|
||||
2 a house [50, ]
|
||||
|
@ -0,0 +1,61 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
a0 [0, ]
|
||||
a1 [1, ]
|
||||
a10 [16, ]
|
||||
a11 [17, ]
|
||||
a12 [18, ]
|
||||
a13 [19, ]
|
||||
a14 [20, ]
|
||||
a15 [21, ]
|
||||
a16 [22, ]
|
||||
a17 [23, ]
|
||||
a18 [24, ]
|
||||
a19 [25, ]
|
||||
a1a [26, ]
|
||||
a1b [27, ]
|
||||
a1c [28, ]
|
||||
a1d [29, ]
|
||||
a1e [30, ]
|
||||
a1f [31, ]
|
||||
a2 [2, ]
|
||||
a20 [32, ]
|
||||
a21 [33, ]
|
||||
a22 [34, ]
|
||||
a23 [35, ]
|
||||
a24 [36, ]
|
||||
a25 [37, ]
|
||||
a26 [38, ]
|
||||
a27 [39, ]
|
||||
a28 [40, ]
|
||||
a29 [41, ]
|
||||
a2a [42, ]
|
||||
a2b [43, ]
|
||||
a2c [44, ]
|
||||
a2d [45, ]
|
||||
a2e [46, ]
|
||||
a2f [47, ]
|
||||
a3 [3, ]
|
||||
a30 [48, ]
|
||||
a31 [49, ]
|
||||
a4 [4, ]
|
||||
a5 [5, ]
|
||||
a6 [6, ]
|
||||
a7 [7, ]
|
||||
a8 [8, ]
|
||||
a9 [9, ]
|
||||
aa [10, ]
|
||||
ab [11, ]
|
||||
ac [12, ]
|
||||
ad [13, ]
|
||||
ae [14, ]
|
||||
af [15, ]
|
||||
amazing [50, ]
|
||||
an [50, ]
|
||||
at [50, ]
|
||||
bell [51, ]
|
||||
house [50, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,7 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 an a [50, ]
|
||||
1 at a [50, ]
|
||||
2 at a [50, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, ]
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 b rings [51, ]
|
||||
|
@ -0,0 +1,61 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
amazing [50, ]
|
||||
an [50, ]
|
||||
at [50, ]
|
||||
b0 [52, ]
|
||||
b1 [53, ]
|
||||
b10 [68, ]
|
||||
b11 [69, ]
|
||||
b12 [70, ]
|
||||
b13 [71, ]
|
||||
b14 [72, ]
|
||||
b15 [73, ]
|
||||
b16 [74, ]
|
||||
b17 [75, ]
|
||||
b18 [76, ]
|
||||
b19 [77, ]
|
||||
b1a [78, ]
|
||||
b1b [79, ]
|
||||
b1c [80, ]
|
||||
b1d [81, ]
|
||||
b1e [82, ]
|
||||
b1f [83, ]
|
||||
b2 [54, ]
|
||||
b20 [84, ]
|
||||
b21 [85, ]
|
||||
b22 [86, ]
|
||||
b23 [87, ]
|
||||
b24 [88, ]
|
||||
b25 [89, ]
|
||||
b26 [90, ]
|
||||
b27 [91, ]
|
||||
b28 [92, ]
|
||||
b29 [93, ]
|
||||
b2a [94, ]
|
||||
b2b [95, ]
|
||||
b2c [96, ]
|
||||
b2d [97, ]
|
||||
b2e [98, ]
|
||||
b2f [99, ]
|
||||
b3 [55, ]
|
||||
b30 [100, ]
|
||||
b31 [101, ]
|
||||
b4 [56, ]
|
||||
b5 [57, ]
|
||||
b6 [58, ]
|
||||
b7 [59, ]
|
||||
b8 [60, ]
|
||||
b9 [61, ]
|
||||
ba [62, ]
|
||||
bb [63, ]
|
||||
bc [64, ]
|
||||
bd [65, ]
|
||||
be [66, ]
|
||||
bell [51, ]
|
||||
bf [67, ]
|
||||
house [50, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 the b [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, ]
|
@ -0,0 +1,9 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a house [50, ]
|
||||
2 a amazing [50, ]
|
||||
2 a house [50, ]
|
||||
|
@ -0,0 +1,61 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
a0 [0, ]
|
||||
a1 [1, ]
|
||||
a10 [16, ]
|
||||
a11 [17, ]
|
||||
a12 [18, ]
|
||||
a13 [19, ]
|
||||
a14 [20, ]
|
||||
a15 [21, ]
|
||||
a16 [22, ]
|
||||
a17 [23, ]
|
||||
a18 [24, ]
|
||||
a19 [25, ]
|
||||
a1a [26, ]
|
||||
a1b [27, ]
|
||||
a1c [28, ]
|
||||
a1d [29, ]
|
||||
a1e [30, ]
|
||||
a1f [31, ]
|
||||
a2 [2, ]
|
||||
a20 [32, ]
|
||||
a21 [33, ]
|
||||
a22 [34, ]
|
||||
a23 [35, ]
|
||||
a24 [36, ]
|
||||
a25 [37, ]
|
||||
a26 [38, ]
|
||||
a27 [39, ]
|
||||
a28 [40, ]
|
||||
a29 [41, ]
|
||||
a2a [42, ]
|
||||
a2b [43, ]
|
||||
a2c [44, ]
|
||||
a2d [45, ]
|
||||
a2e [46, ]
|
||||
a2f [47, ]
|
||||
a3 [3, ]
|
||||
a30 [48, ]
|
||||
a31 [49, ]
|
||||
a4 [4, ]
|
||||
a5 [5, ]
|
||||
a6 [6, ]
|
||||
a7 [7, ]
|
||||
a8 [8, ]
|
||||
a9 [9, ]
|
||||
aa [10, ]
|
||||
ab [11, ]
|
||||
ac [12, ]
|
||||
ad [13, ]
|
||||
ae [14, ]
|
||||
af [15, ]
|
||||
amazing [50, ]
|
||||
an [50, ]
|
||||
at [50, ]
|
||||
bell [51, ]
|
||||
house [50, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,7 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 an a [50, ]
|
||||
1 at a [50, ]
|
||||
2 at a [50, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, ]
|
@ -0,0 +1,10 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a house [50, ]
|
||||
1 b rings [51, ]
|
||||
2 a amazing [50, ]
|
||||
2 a house [50, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5f6443e54fae188aa96d4f27fce28939
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 an a [50, ]
|
||||
1 at a [50, ]
|
||||
1 the b [51, ]
|
||||
2 at a [50, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 51, ]
|
@ -0,0 +1,14 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [51, ]
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a and [50, ]
|
||||
1 a beautiful [50, ]
|
||||
2 a am [51, ]
|
||||
2 a amazing [50, ]
|
||||
2 a and [50, ]
|
||||
2 a beautiful [50, ]
|
||||
2 a house [50, ]
|
||||
|
@ -0,0 +1,65 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5 [51, ]
|
||||
a0 [0, ]
|
||||
a1 [1, ]
|
||||
a10 [16, ]
|
||||
a11 [17, ]
|
||||
a12 [18, ]
|
||||
a13 [19, ]
|
||||
a14 [20, ]
|
||||
a15 [21, ]
|
||||
a16 [22, ]
|
||||
a17 [23, ]
|
||||
a18 [24, ]
|
||||
a19 [25, ]
|
||||
a1a [26, ]
|
||||
a1b [27, ]
|
||||
a1c [28, ]
|
||||
a1d [29, ]
|
||||
a1e [30, ]
|
||||
a1f [31, ]
|
||||
a2 [2, ]
|
||||
a20 [32, ]
|
||||
a21 [33, ]
|
||||
a22 [34, ]
|
||||
a23 [35, ]
|
||||
a24 [36, ]
|
||||
a25 [37, ]
|
||||
a26 [38, ]
|
||||
a27 [39, ]
|
||||
a28 [40, ]
|
||||
a29 [41, ]
|
||||
a2a [42, ]
|
||||
a2b [43, ]
|
||||
a2c [44, ]
|
||||
a2d [45, ]
|
||||
a2e [46, ]
|
||||
a2f [47, ]
|
||||
a3 [3, ]
|
||||
a30 [48, ]
|
||||
a31 [49, ]
|
||||
a4 [4, ]
|
||||
a5 [5, ]
|
||||
a6 [6, ]
|
||||
a7 [7, ]
|
||||
a8 [8, ]
|
||||
a9 [9, ]
|
||||
aa [10, ]
|
||||
ab [11, ]
|
||||
ac [12, ]
|
||||
ad [13, ]
|
||||
ae [14, ]
|
||||
af [15, ]
|
||||
am [51, ]
|
||||
amazing [50, ]
|
||||
an [50, ]
|
||||
and [50, ]
|
||||
at [50, 51, ]
|
||||
beautiful [50, ]
|
||||
bell [51, ]
|
||||
house [50, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,16 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 5 a [51, ]
|
||||
1 amazing a [50, ]
|
||||
1 an a [50, ]
|
||||
1 at a [50, ]
|
||||
1 rings a [51, ]
|
||||
2 an a [50, ]
|
||||
2 at a [50, 51, ]
|
||||
2 bell a [51, ]
|
||||
3 at a [50, ]
|
||||
3 rings a [51, ]
|
||||
3 the a [51, ]
|
||||
4 bell a [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, ]
|
@ -0,0 +1,14 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [51, ]
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a and [50, ]
|
||||
1 a beautiful [50, ]
|
||||
2 a am [51, ]
|
||||
2 a amazing [50, ]
|
||||
2 a and [50, ]
|
||||
2 a beautiful [50, ]
|
||||
2 a house [50, ]
|
||||
|
@ -0,0 +1,65 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5 [51, ]
|
||||
a0 [0, ]
|
||||
a1 [1, ]
|
||||
a10 [16, ]
|
||||
a11 [17, ]
|
||||
a12 [18, ]
|
||||
a13 [19, ]
|
||||
a14 [20, ]
|
||||
a15 [21, ]
|
||||
a16 [22, ]
|
||||
a17 [23, ]
|
||||
a18 [24, ]
|
||||
a19 [25, ]
|
||||
a1a [26, ]
|
||||
a1b [27, ]
|
||||
a1c [28, ]
|
||||
a1d [29, ]
|
||||
a1e [30, ]
|
||||
a1f [31, ]
|
||||
a2 [2, ]
|
||||
a20 [32, ]
|
||||
a21 [33, ]
|
||||
a22 [34, ]
|
||||
a23 [35, ]
|
||||
a24 [36, ]
|
||||
a25 [37, ]
|
||||
a26 [38, ]
|
||||
a27 [39, ]
|
||||
a28 [40, ]
|
||||
a29 [41, ]
|
||||
a2a [42, ]
|
||||
a2b [43, ]
|
||||
a2c [44, ]
|
||||
a2d [45, ]
|
||||
a2e [46, ]
|
||||
a2f [47, ]
|
||||
a3 [3, ]
|
||||
a30 [48, ]
|
||||
a31 [49, ]
|
||||
a4 [4, ]
|
||||
a5 [5, ]
|
||||
a6 [6, ]
|
||||
a7 [7, ]
|
||||
a8 [8, ]
|
||||
a9 [9, ]
|
||||
aa [10, ]
|
||||
ab [11, ]
|
||||
ac [12, ]
|
||||
ad [13, ]
|
||||
ae [14, ]
|
||||
af [15, ]
|
||||
am [51, ]
|
||||
amazing [50, ]
|
||||
an [50, ]
|
||||
and [50, ]
|
||||
at [50, 51, ]
|
||||
beautiful [50, ]
|
||||
bell [51, ]
|
||||
house [50, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,16 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 5 a [51, ]
|
||||
1 amazing a [50, ]
|
||||
1 an a [50, ]
|
||||
1 at a [50, ]
|
||||
1 rings a [51, ]
|
||||
2 an a [50, ]
|
||||
2 at a [50, 51, ]
|
||||
2 bell a [51, ]
|
||||
3 at a [50, ]
|
||||
3 rings a [51, ]
|
||||
3 the a [51, ]
|
||||
4 bell a [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, ]
|
@ -0,0 +1,17 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [51, ]
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a and [50, ]
|
||||
1 a beautiful [50, ]
|
||||
1 b house [50, ]
|
||||
1 b rings [51, ]
|
||||
2 a am [51, ]
|
||||
2 a amazing [50, ]
|
||||
2 a and [50, ]
|
||||
2 a beautiful [50, ]
|
||||
2 a house [50, ]
|
||||
2 b at [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
9f4866b80177e321a33ce434992022b5
|
@ -0,0 +1,21 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 5 a [51, ]
|
||||
1 amazing a [50, ]
|
||||
1 an a [50, ]
|
||||
1 and b [50, ]
|
||||
1 at a [50, ]
|
||||
1 rings a [51, ]
|
||||
1 the b [51, ]
|
||||
2 amazing b [50, ]
|
||||
2 an a [50, ]
|
||||
2 at a [50, 51, ]
|
||||
2 bell a [51, ]
|
||||
3 an b [50, ]
|
||||
3 at a [50, ]
|
||||
3 rings a [51, ]
|
||||
3 the a [51, ]
|
||||
4 at b [50, ]
|
||||
4 bell a [51, ]
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
[51, ]
|
@ -0,0 +1,14 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 a 5 [51, ]
|
||||
1 a amazing [50, ]
|
||||
1 a an [50, ]
|
||||
1 a and [50, ]
|
||||
1 a beautiful [50, ]
|
||||
2 a am [51, ]
|
||||
2 a amazing [50, ]
|
||||
2 a and [50, ]
|
||||
2 a beautiful [50, ]
|
||||
2 a house [50, ]
|
||||
|
@ -0,0 +1,65 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
5 [51, ]
|
||||
a0 [0, ]
|
||||
a1 [1, ]
|
||||
a10 [16, ]
|
||||
a11 [17, ]
|
||||
a12 [18, ]
|
||||
a13 [19, ]
|
||||
a14 [20, ]
|
||||
a15 [21, ]
|
||||
a16 [22, ]
|
||||
a17 [23, ]
|
||||
a18 [24, ]
|
||||
a19 [25, ]
|
||||
a1a [26, ]
|
||||
a1b [27, ]
|
||||
a1c [28, ]
|
||||
a1d [29, ]
|
||||
a1e [30, ]
|
||||
a1f [31, ]
|
||||
a2 [2, ]
|
||||
a20 [32, ]
|
||||
a21 [33, ]
|
||||
a22 [34, ]
|
||||
a23 [35, ]
|
||||
a24 [36, ]
|
||||
a25 [37, ]
|
||||
a26 [38, ]
|
||||
a27 [39, ]
|
||||
a28 [40, ]
|
||||
a29 [41, ]
|
||||
a2a [42, ]
|
||||
a2b [43, ]
|
||||
a2c [44, ]
|
||||
a2d [45, ]
|
||||
a2e [46, ]
|
||||
a2f [47, ]
|
||||
a3 [3, ]
|
||||
a30 [48, ]
|
||||
a31 [49, ]
|
||||
a4 [4, ]
|
||||
a5 [5, ]
|
||||
a6 [6, ]
|
||||
a7 [7, ]
|
||||
a8 [8, ]
|
||||
a9 [9, ]
|
||||
aa [10, ]
|
||||
ab [11, ]
|
||||
ac [12, ]
|
||||
ad [13, ]
|
||||
ae [14, ]
|
||||
af [15, ]
|
||||
am [51, ]
|
||||
amazing [50, ]
|
||||
an [50, ]
|
||||
and [50, ]
|
||||
at [50, 51, ]
|
||||
beautiful [50, ]
|
||||
bell [51, ]
|
||||
house [50, ]
|
||||
rings [51, ]
|
||||
the [51, ]
|
||||
|
@ -0,0 +1,16 @@
|
||||
---
|
||||
source: milli/src/update/prefix_word_pairs/mod.rs
|
||||
---
|
||||
1 5 a [51, ]
|
||||
1 amazing a [50, ]
|
||||
1 an a [50, ]
|
||||
1 at a [50, ]
|
||||
1 rings a [51, ]
|
||||
2 an a [50, ]
|
||||
2 at a [50, 51, ]
|
||||
2 bell a [51, ]
|
||||
3 at a [50, ]
|
||||
3 rings a [51, ]
|
||||
3 the a [51, ]
|
||||
4 bell a [51, ]
|
||||
|
Reference in New Issue
Block a user