Skip to content

Coverage: implementation/obilayeredmap.md

Code couvert

  • obilayeredmap/src/mphf_layer.rs — MphfLayer, LayerEvidence enum (Exact/Approx), find(), find_exact(), find_approx()
  • obilayeredmap/src/layer.rs — Layer, trait LayerData, modes () / PersistentCompactIntMatrix / PersistentBitMatrix, build(), build_evidence(), append_genome_column()
  • obilayeredmap/src/map.rs — LayeredMap, push_layer(), query()
  • obilayeredmap/src/evidence.rs — Evidence, EvidenceWriter, encodage chunk_id:rank
  • obilayeredmap/src/fingerprint.rs — FingerprintVec, FingerprintVecWriter, matches()
  • obilayeredmap/src/meta.rs — LayerMeta, EvidenceKind (Exact / Approx { b, z })

Notes

FORT RISQUE DE DÉRIVE. C'est le fichier le plus affecté par les changements récents : - EvidenceKind (Exact / Approx) est désormais un concept de premier plan — toute la sémantique de query en dépend - LayerEvidence enum interne à MphfLayer : dispatch transparent find() → find_exact() ou find_approx() - fingerprint.rs : module entièrement nouveau (FingerprintVec + FingerprintVecWriter) - build_evidence() / build_exact_evidence() / build_approx_evidence() sont nouveaux - block_bits dans les fonctions build : O(1) garanti avec le chemin chaud explicit pour block_bits=0 - Séparation open() (accès aléatoire, requiert .idx) vs open_sequential() (itération seule) Pratiquement toute cette page est à réécrire.