Api for external language.
This file provides a trait to be used as an opaque pointer for C or Julia calls used in file libext.rs
This module provides a memory mapping of Data vectors filling the Hnsw structure. It is managed by the module
hnswiomodule for distance implementation
defines a trait for filtering requests.
See examples in tests/filtertest.rs
This module provides conversion of a Point structure to a FlatPoint containing just the Id of a point
and those of its neighbours.
The whole Hnsw structure is then flattened into a Hashtable associating the data ID of a point to
its corresponding FlatPoint.
It can be used, for example, when reloading only the graph part of the data to have knowledge
of relative proximity of points as described just by their DataId
A rust implementation of Approximate NN search from:
Efficient and robust approximate nearest neighbour search using Hierarchical Navigable
small World graphs.
Yu. A. Malkov, D.A Yashunin 2016, 2018
This module provides io dump/ reload of computed graph via the structure Hnswio.
This structure stores references to data points if memory map is used.
This file contains lib to call hnsw from julia (or any language providing a C api)
The AnnT trait is implemented with macros for u32, u16, u8, f32, f64 and i32.
The macro declare_myapi_type! produces struct HnswApif32 and so on.