File: zip_iterator.cpp

package info (click to toggle)
seqan2 2.5.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 228,748 kB
  • sloc: cpp: 257,602; ansic: 91,967; python: 8,326; sh: 1,056; xml: 570; makefile: 229; awk: 51; javascript: 21
file content (34 lines) | stat: -rw-r--r-- 838 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream>

#include <seqan/basic.h>
#include <seqan/sequence.h>
#include <seqan/stream.h>

using namespace seqan2;

int main()
{
    StringSet<CharString> names;
    StringSet<CharString> surnames;
    String<int>           ages;

    appendValue(names, "John");
    appendValue(names, "Johnny");
    appendValue(names, "Garfield");

    appendValue(surnames, "Doe");
    appendValue(surnames, "Donny");
    appendValue(surnames, "the Cat");

    appendValue(ages, 98);
    appendValue(ages, 20);
    appendValue(ages, 42);

    auto it = makeZipIterator(begin(names), begin(surnames), begin(ages));
    auto itEnd = makeZipIterator(end(names), end(surnames), end(ages));

    for (; it != itEnd; ++it)
        std::cout << std::get<1>(*it) << ", " << std::get<0>(*it) << ": " << std::get<2>(*it) << std::endl;

    return 0;
}