HNSW is more difficult to use than it should be. HNSW should be changed to have an HNSWMap and HNSWSet variant. The current behavior should be preserved in that features can be accessed by index and that the index should be returned on adding something to either type of HNSW. However, the HNSW should also additionally store an item in it. The set variant will simply set that item to (), inuring no overhead.
HNSW is more difficult to use than it should be. HNSW should be changed to have an HNSWMap and HNSWSet variant. The current behavior should be preserved in that features can be accessed by index and that the index should be returned on adding something to either type of HNSW. However, the HNSW should also additionally store an item in it. The set variant will simply set that item to
(), inuring no overhead.