- (+(spirit::alpha_p))[spirit::assign_a(species_name)] >>
- *((spirit::uint_p[spirit::assign_a(start)] >>
- spirit::uint_p[spirit::assign_a(end)] >>
- (*(spirit::alpha_p))[spirit::assign_a(name)] >>
- (*(spirit::alpha_p))[spirit::assign_a(type)]
- // to understand, read the comment above
- // struct push_back_annot
- )[push_back_annot(annots, start, end, name, type)])
+ (+(spirit::alpha_p))[spirit::assign_a(species)] >>
+ *(
+ // parse an absolute location name
+ (spirit::uint_p[spirit::assign_a(start)] >>
+ spirit::uint_p[spirit::assign_a(end)] >>
+ (*(spirit::alpha_p))[spirit::assign_a(name)]/* >>
+ (*(spirit::alpha_p))[spirit::assign_a(type)]*/
+ // to understand how this group gets set
+ // read the comment above struct push_back_annot
+ )[push_back_annot(annots, start, end, type, name)]
+ |
+ (spirit::ch_p('>') >>
+ (*(spirit::alpha_p))[spirit::assign_a(name)] >>
+ (+(spirit::ch_p('A')|
+ spirit::ch_p('G')|
+ spirit::ch_p('C')|
+ spirit::ch_p('T'))[spirit::assign_a(seq)])
+ )[push_back_seq(query_seqs, name, seq)]
+ )