Skip to content

Commit b67d1d4

Browse files
committed
More cleanup of MaxNovo parsing
1 parent 71ddf62 commit b67d1d4

1 file changed

Lines changed: 3 additions & 14 deletions

File tree

rustyms/src/identification/formats/maxquant.rs

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,4 @@
1-
use std::{
2-
borrow::Cow,
3-
marker::PhantomData,
4-
num::NonZeroU32,
5-
ops::Range,
6-
path::{Path, PathBuf},
7-
};
1+
use std::{borrow::Cow, marker::PhantomData, num::NonZeroU32, ops::Range, path::PathBuf};
82

93
use itertools::Itertools;
104
use serde::{Deserialize, Serialize};
@@ -42,7 +36,6 @@ format_family!(
4236
SemiAmbiguous, MaybePeptidoform, [&MSMS, &NOVO_MSMS_SCANS, &MSMS_SCANS, &SILAC], b'\t', None;
4337
required {
4438
scan_number: ThinVec<usize>, |location: Location, _| location.or_empty().array(';').map(|s| s.parse(NUMBER_ERROR)).collect::<Result<ThinVec<usize>, BoxedError<'_, BasicKind>>>();
45-
modifications: Box<str>, |location: Location, _| Ok(location.get_boxed_str());
4639
proteins: Box<str>, |location: Location, _| Ok(location.get_boxed_str());
4740
peptide: Option<Peptidoform<SemiAmbiguous>>, |location: Location, custom_database: Option<&CustomDatabase>| location.or_empty().parse_with(|location| Peptidoform::sloppy_pro_forma(
4841
location.full_line(),
@@ -56,7 +49,6 @@ format_family!(
5649
score: f64, |location: Location, _| location.parse(NUMBER_ERROR);
5750
}
5851
optional {
59-
raw_file: PathBuf, |location: Location, _| Ok(Path::new(&location.get_string()).to_owned());
6052
all_modified_sequences: ThinVec<Peptidoform<SemiAmbiguous>>, |location: Location, custom_database: Option<&CustomDatabase>| location.array(';')
6153
.map(|s| Peptidoform::sloppy_pro_forma(s.line.line(), s.location, custom_database, &SloppyParsingParameters::default()).map_err(BoxedError::to_owned))
6254
.collect::<Result<ThinVec<Peptidoform<SemiAmbiguous>>, BoxedError<'static, BasicKind>>>();
@@ -103,6 +95,7 @@ format_family!(
10395
protein_group_ids: ThinVec<usize>, |location: Location, _| location.array(';').map(|p| p.parse::<usize>(NUMBER_ERROR)).collect::<Result<ThinVec<_>,_>>();
10496
ration_h_l_normalised: f32, |location: Location, _| location.or_empty().parse::<f32>(NUMBER_ERROR);
10597
ration_h_l: f32, |location: Location, _| location.or_empty().parse::<f32>(NUMBER_ERROR);
98+
raw_file: PathBuf, |location: Location, _| Ok(PathBuf::from(location.get_string()));
10699
rt: Time, |location: Location, _| location.parse::<f64>(NUMBER_ERROR).map(Time::new::<crate::system::time::min>);
107100
scan_event_number: usize, |location: Location, _| location.parse::<usize>(NUMBER_ERROR);
108101
scan_index: usize, |location: Location, _| location.parse::<usize>(NUMBER_ERROR);
@@ -195,8 +188,7 @@ pub const MSMS: MaxQuantFormat = MaxQuantFormat {
195188
localisation_probability: OptionalColumn::Required("localization prob"),
196189
mass_analyser: OptionalColumn::Required("mass analyzer"),
197190
mass: OptionalColumn::Required("mass"),
198-
missed_cleavages: OptionalColumn::Required("missed cleavages"),
199-
modifications: "modifications",
191+
missed_cleavages: OptionalColumn::Optional("missed cleavages"),
200192
modified_peptide_id: OptionalColumn::Required("mod. peptide id"),
201193
mz: OptionalColumn::Required("m/z"),
202194
nem_probabilities: OptionalColumn::NotAvailable,
@@ -259,7 +251,6 @@ pub const MSMS_SCANS: MaxQuantFormat = MaxQuantFormat {
259251
mass_analyser: OptionalColumn::Required("mass analyzer"),
260252
mass: OptionalColumn::Required("mass"),
261253
missed_cleavages: OptionalColumn::NotAvailable,
262-
modifications: "modifications",
263254
modified_peptide_id: OptionalColumn::NotAvailable,
264255
mz: OptionalColumn::Required("m/z"),
265256
nem_probabilities: OptionalColumn::NotAvailable,
@@ -322,7 +313,6 @@ pub const NOVO_MSMS_SCANS: MaxQuantFormat = MaxQuantFormat {
322313
mass_analyser: OptionalColumn::Required("mass analyzer"),
323314
mass: OptionalColumn::Required("mass"),
324315
missed_cleavages: OptionalColumn::NotAvailable,
325-
modifications: "modifications",
326316
modified_peptide_id: OptionalColumn::NotAvailable,
327317
mz: OptionalColumn::Required("m/z"),
328318
nem_probabilities: OptionalColumn::NotAvailable,
@@ -387,7 +377,6 @@ pub const SILAC: MaxQuantFormat = MaxQuantFormat {
387377
mass_analyser: OptionalColumn::NotAvailable,
388378
mass: OptionalColumn::Required("mass"),
389379
missed_cleavages: OptionalColumn::NotAvailable,
390-
modifications: "modifications",
391380
modified_peptide_id: OptionalColumn::Required("mod. peptide id"),
392381
mz: OptionalColumn::Required("m/z"),
393382
nem_probabilities: OptionalColumn::Required("nem probabilities"),

0 commit comments

Comments
 (0)