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 5The zip iterator provides the ability to parallel-iterate 6over several controlled sequences simultaneously. A zip 7iterator is constructed from a tuple of iterators. Moving 8the zip iterator moves all the iterators in parallel. 9Dereferencing the zip iterator returns a tuple that contains 10the results of dereferencing the individual iterators. 11 12The tuple of iterators is now implemented in terms of a Boost fusion sequence. 13Because of this the 'tuple' may be any Boost fusion sequence and, for backwards 14compatibility 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 16Boost fusion adapter exists. This includes, among others, a std::tuple and a std::pair. 17Just remember to include the appropriate Boost fusion adapter header files for these 18other Boost fusion adapters. The zip_iterator header file already includes the 19Boost fusion adapter header file for Boost tuple, so you need not include it yourself 20to use a Boost tuple as your 'tuple'. 21