Implémentation des superkmers canoniques et nettoyage du parsing GenBank

Ajout de la fonction IterCanonicalSuperKmers dans superkmer_iter.go pour implémenter les superkmers canoniques selon le document d'architecture.

Corrections dans genbank_read.go :
- Nettoyage des lignes de données avec strings.TrimSpace
- Augmentation du nombre de parties extraites avec SplitN à 7
- Début de la boucle à l'indice 1 au lieu de 0 pour ignorer le premier élément vide

Création du fichier Canonical-superkmers.md pour documenter l'implémentation.
This commit is contained in:
Eric Coissac
2026-02-19 18:30:46 +01:00
parent c30a22d356
commit 0580611031
2 changed files with 6 additions and 2 deletions

View File

@@ -162,9 +162,10 @@ func GenbankChunkParser(withFeatureTable, UtoT bool) func(string, io.Reader) (ob
// log.Debugf("Chunk %d : Genbank: line %d, state = %d : %s", chunks.order, nl, state, line)
sl++
parts := strings.SplitN(line[10:], " ", 6)
cleanline := strings.TrimSpace(line)
parts := strings.SplitN(cleanline, " ", 7)
lparts := len(parts)
for i := 0; i < lparts; i++ {
for i := 1; i < lparts; i++ {
if UtoT {
parts[i] = strings.ReplaceAll(parts[i], "u", "t")
}