pub struct DigestConfig {Show 18 fields
pub missed_cleavages: u8,
pub min_len: usize,
pub max_len: usize,
pub cleave_at: String,
pub restrict: String,
pub c_terminal: bool,
pub peptide_min_mass: f32,
pub peptide_max_mass: f32,
pub static_mods: HashMap<String, f32>,
pub variable_mods: HashMap<String, Vec<f32>>,
pub max_variable_mods: usize,
pub decoy_tag: String,
pub generate_decoys: bool,
pub decoy_mass_shift: f64,
pub decoy_shuffle: bool,
pub decoy_method: String,
pub decoy_order: usize,
pub decoy_seed: u64,
}Expand description
Digestion + modification configuration. Mirrors Sage’s database block.
Fields§
§missed_cleavages: u8§min_len: usize§max_len: usize§cleave_at: StringResidues to cleave at (trypsin = “KR”).
restrict: StringResidues that block cleavage when following a cleavage site (“P”).
c_terminal: bool§peptide_min_mass: f32§peptide_max_mass: f32§static_mods: HashMap<String, f32>Fixed modifications, e.g. {“C”: 57.02146}.
variable_mods: HashMap<String, Vec<f32>>Variable modifications, e.g. {“M”: [15.9949]}.
max_variable_mods: usize§decoy_tag: String§generate_decoys: bool§decoy_mass_shift: f64Mass (Da) added to every decoy peptide so decoys are NOT mass twins of their targets. A real feature then never competes against its own decoy; decoys match only by random mass coincidence, giving an honest MS1 null where retention time has full discriminating power. (koth uses 11 Da.)
decoy_shuffle: boolGenerate decoys by SHUFFLING the peptide interior (same mass as the
target) instead of reversing + mass-shifting. Shuffled same-mass decoys
model the random mass-coincidence background honestly (unlike mass-shifted
decoys, which sample a different mass region and underestimate the false
rate), while randomized order keeps them from being RT-twins (unlike plain
reversal). When true, decoy_mass_shift is ignored.
decoy_method: StringProtein-level decoy generator (experimental). When set to anything other
than “shuffle”, whole decoy proteins are synthesized from the target
proteome and digested by the same enzyme, overriding decoy_shuffle.
One of: “shuffle” (default), “reverse”, “random_uniform”, “random_freq”,
“markov”, “debruijn”. See crate::decoy.
decoy_order: usizeOrder k for “markov” / “debruijn” decoy methods (ignored otherwise).
decoy_seed: u64Seed for the decoy shuffle (0 = the shipped default stream; see
crate::seed_mix). Set with uno --seed.
Trait Implementations§
Source§impl Clone for DigestConfig
impl Clone for DigestConfig
Source§impl Debug for DigestConfig
impl Debug for DigestConfig
Source§impl Default for DigestConfig
impl Default for DigestConfig
Source§impl<'de> Deserialize<'de> for DigestConfigwhere
DigestConfig: Default,
impl<'de> Deserialize<'de> for DigestConfigwhere
DigestConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for DigestConfig
impl RefUnwindSafe for DigestConfig
impl Send for DigestConfig
impl Sync for DigestConfig
impl Unpin for DigestConfig
impl UnsafeUnpin for DigestConfig
impl UnwindSafe for DigestConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.