<commit_before>#![doc(html_logo_url = "http://fulmicoton.com/tantivy-logo/tantivy-logo.png")]
#![cfg_attr(feature = "cargo-clippy", allow(module_inception))]
#![cfg_attr(feature = "cargo-clippy", allow(inline_always))]

#![feature(box_syntax)]
#![feature(optin_builtin_traits)]
#![feature(conservative_impl_trait)]
#![feature(integer_atomics)]

#![cfg_attr(test, feature(test))]
#![cfg_attr(test, feature(step_by))]

#![doc(test(attr(allow(unused_variables), deny(warnings))))]

#![allow(unknown_lints)]

#![warn(missing_docs)]

//! # `tantivy`
//!
//! Tantivy is a search engine library.
//! Think `Lucene`, but in Rust.
//!
//! A good place for you to get started is to check out
//! the example code (
//! [literate programming](http://fulmicoton.com/tantivy-examples/simple_search.html) /
//! [source code](https://github.com/fulmicoton/tantivy/blob/master/examples/simple_search.rs))

#[macro_use]
extern crate lazy_static;

#[macro_use]
extern crate serde_derive;

#[macro_use]
extern crate log;

#[macro_use]
extern crate version;
extern crate fst;
extern crate byteorder;
extern crate memmap;
extern crate regex;
extern crate tempfile;
extern crate atomicwrites;
extern crate tempdir;
extern crate serde;
extern crate bincode;
extern crate serde_json;
extern crate time;
extern crate lz4;
extern crate uuid;
extern crate num_cpus;
extern crate combine;
extern crate itertools;
extern crate chan;
extern crate crossbeam;
extern crate bit_set;
extern crate futures;
extern crate futures_cpupool;

#[cfg(test)]
extern crate env_logger;

#[cfg(feature="simdcompression")]
extern crate libc;

#[cfg(windows)]
extern crate winapi;

#[cfg(test)]
extern crate test;
#[cfg(test)]
extern crate rand;


#[cfg(test)]
mod functional_test;




#[macro_use]
mod macros;

pub use error::Error;

/// Tantivy result.
pub type Result<T> = std::result::Result<T, Error>;

mod core;
mod compression;
mod indexer;
pub mod common;
mod error;
mod analyzer;
mod datastruct;

pub mod termdict;

// Row-oriented, slow, compressed storage of documents
pub mod store;

/// Query module
pub mod query;

pub mod directory;

/// Collector module
pub mod collector;

/// Postings module (also called inverted index)
pub mod postings;
/// Schema
pub mod schema;

pub mod fastfield;


pub use directory::Directory;
pub use core::{Index, Segment, SegmentId, SegmentMeta, Searcher};
pub use indexer::IndexWriter;
pub use schema::{Term, Document};
pub use core::SegmentReader;
pub use self::common::TimerTree;

pub use postings::DocSet;
pub use postings::Postings;
pub use core::SegmentComponent;
pub use postings::SegmentPostingsOption;
<commit_msg>Avoid exposing common. Exposes u64 to i64 conversion instead.<commit_after>#![doc(html_logo_url = "http://fulmicoton.com/tantivy-logo/tantivy-logo.png")]
#![cfg_attr(feature = "cargo-clippy", allow(module_inception))]
#![cfg_attr(feature = "cargo-clippy", allow(inline_always))]

#![feature(box_syntax)]
#![feature(optin_builtin_traits)]
#![feature(conservative_impl_trait)]
#![feature(integer_atomics)]

#![cfg_attr(test, feature(test))]
#![cfg_attr(test, feature(step_by))]

#![doc(test(attr(allow(unused_variables), deny(warnings))))]

#![allow(unknown_lints)]

#![warn(missing_docs)]

//! # `tantivy`
//!
//! Tantivy is a search engine library.
//! Think `Lucene`, but in Rust.
//!
//! A good place for you to get started is to check out
//! the example code (
//! [literate programming](http://fulmicoton.com/tantivy-examples/simple_search.html) /
//! [source code](https://github.com/fulmicoton/tantivy/blob/master/examples/simple_search.rs))

#[macro_use]
extern crate lazy_static;

#[macro_use]
extern crate serde_derive;

#[macro_use]
extern crate log;

#[macro_use]
extern crate version;
extern crate fst;
extern crate byteorder;
extern crate memmap;
extern crate regex;
extern crate tempfile;
extern crate atomicwrites;
extern crate tempdir;
extern crate serde;
extern crate bincode;
extern crate serde_json;
extern crate time;
extern crate lz4;
extern crate uuid;
extern crate num_cpus;
extern crate combine;
extern crate itertools;
extern crate chan;
extern crate crossbeam;
extern crate bit_set;
extern crate futures;
extern crate futures_cpupool;

#[cfg(test)]
extern crate env_logger;

#[cfg(feature="simdcompression")]
extern crate libc;

#[cfg(windows)]
extern crate winapi;

#[cfg(test)]
extern crate test;
#[cfg(test)]
extern crate rand;


#[cfg(test)]
mod functional_test;




#[macro_use]
mod macros;

pub use error::Error;

/// Tantivy result.
pub type Result<T> = std::result::Result<T, Error>;

mod core;
mod compression;
mod indexer;
mod common;
mod error;
mod analyzer;
mod datastruct;

pub mod termdict;

// Row-oriented, slow, compressed storage of documents
pub mod store;

/// Query module
pub mod query;

pub mod directory;

/// Collector module
pub mod collector;

/// Postings module (also called inverted index)
pub mod postings;
/// Schema
pub mod schema;

pub mod fastfield;


pub use directory::Directory;
pub use core::{Index, Segment, SegmentId, SegmentMeta, Searcher};
pub use indexer::IndexWriter;
pub use schema::{Term, Document};
pub use core::SegmentReader;
pub use self::common::TimerTree;

pub use postings::DocSet;
pub use postings::Postings;
pub use core::SegmentComponent;
pub use postings::SegmentPostingsOption;

pub use common::{i64_to_u64, u64_to_i64};
{'fraction_non_alphanumeric': 0.13443484791588434, 'fraction_numerical': 0.0026286143447239955, 'mean_word_length': 5.900259067357513, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4060257', 'n_tokens_mistral': 1887, 'n_tokens_neox': 1790, 'n_words': 525}