]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/iterator/doc/zip_iterator_abstract.rst
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / iterator / doc / zip_iterator_abstract.rst
1 .. Copyright David Abrahams 2006. Distributed under the Boost
2 .. Software License, Version 1.0. (See accompanying
3 .. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
4
5 The zip iterator provides the ability to parallel-iterate
6 over several controlled sequences simultaneously. A zip
7 iterator is constructed from a tuple of iterators. Moving
8 the zip iterator moves all the iterators in parallel.
9 Dereferencing the zip iterator returns a tuple that contains
10 the results of dereferencing the individual iterators.
11
12 The tuple of iterators is now implemented in terms of a Boost fusion sequence.
13 Because of this the 'tuple' may be any Boost fusion sequence and, for backwards
14 compatibility through a Boost fusion sequence adapter, a Boost tuple. Because the
15 'tuple' may be any boost::fusion sequence the 'tuple' may also be any type for which a
16 Boost fusion adapter exists. This includes, among others, a std::tuple and a std::pair.
17 Just remember to include the appropriate Boost fusion adapter header files for these
18 other Boost fusion adapters. The zip_iterator header file already includes the
19 Boost fusion adapter header file for Boost tuple, so you need not include it yourself
20 to use a Boost tuple as your 'tuple'.