63 auto init_line = my_line_count;
67 char val = my_pb.
get();
69 throw std::runtime_error(
"read name should start with '@' (starting line " + std::to_string(init_line + 1) +
")");
72 val = advance_and_check();
73 while (!std::isspace(val)) {
74 my_name.push_back(val);
75 val = advance_and_check();
79 val = advance_and_check();
85 val = advance_and_check();
88 val = advance_and_check();
93 my_sequence.push_back(val);
94 val = advance_and_check();
99 val = advance_and_check();
100 while (val !=
'\n') {
101 val = advance_and_check();
109 SeqLength seq_length = my_sequence.size(), qual_length = 0;
116 }
else if (qual_length >= seq_length) {
122 if (qual_length != seq_length) {
126 throw std::runtime_error(
"non-equal lengths for quality and sequence strings (starting line " + std::to_string(init_line + 1) +
")");