Cette bibliothèque est conçue pour intégrer Tantivy dans Clickhouse et MyScaledB.
Toutes les fonctions FFI (Interface des fonctions étrangères) sont exposées dans lib.rs. Les développeurs doivent régénérer le fichier d'en-tête après avoir apporté des modifications au code pertinent:
cbindgen . -o include/tantivy_search_cbindgen.h --config cbindgen.toml
cxxbridge src/lib.rs --header > include/tantivy_search_cxx.hSi les développeurs n'ajoutent, ne suppriment pas ou ne modifient pas les noms des fonctions FFI, il n'est pas nécessaire d'exécuter la commande ci-dessus.
tantivy_search en utilisant des principes orientés objet. Vous pouvez utiliser cargo pour créer cette bibliothèque, utiliser cette commande:
cargo build --releaseSi vous devez tester la fonction FFI en C ++, exécutez:
mkdir build
cd build && cmake ..
make -j Vous pouvez utiliser vscode ou d'autres compilateurs pour rendre le processus de construction plus élégant.
Tester en rouille:
cargo testVoici un exemple pour exécuter un test unitaire en C ++:
cd build/tests/unit_test
./unit_test