macro_rules! doc {
() => { ... };
($($field:expr => $value:expr),*) => { ... };
($($field:expr => $value:expr),+ ,) => { ... };
}Expand description
doc! is a shortcut that helps building Document
objects.
Assuming that field1 and field2 are Field instances.
You can create a document with a value of value1 for field1
value2 for field2, as follows :
doc!(
field1 => value1,
field2 => value2,
)The value can be a u64, a &str, a i64, or a String.
§Warning
The document hence created, is not yet validated against a schema.
Nothing prevents its user from creating an invalid document missing a
field, or associating a String to a u64 field for instance.
§Example
use tantivy::schema::{Schema, TEXT, FAST};
use tantivy::doc;
//...
let mut schema_builder = Schema::builder();
let title = schema_builder.add_text_field("title", TEXT);
let author = schema_builder.add_text_field("text", TEXT);
let likes = schema_builder.add_u64_field("num_u64", FAST);
let schema = schema_builder.build();
let doc = doc!(
title => "Life Aquatic",
author => "Wes Anderson",
likes => 4u64
);