Skip to main content

gapsmith_align/
hit.rs

1//! The canonical hit structure produced by every aligner backend.
2
3use serde::{Deserialize, Serialize};
4
5/// A single alignment hit, normalized across the three supported aligners
6/// plus the pre-computed TSV path.
7///
8/// Coverage and identity are always on the 0–100 scale, regardless of
9/// whether the source tool reported them as fractions or percentages.
10#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
11pub struct Hit {
12    pub qseqid: String,
13    pub pident: f32,
14    pub evalue: f64,
15    pub bitscore: f32,
16    pub qcov: f32,
17    pub stitle: String,
18    pub sstart: i32,
19    pub send: i32,
20}