|
CGAL 4.7 - STL Extensions for CGAL
|
#include <CGAL/iterator.h>
O.
The class Dispatch_or_drop_output_iterator defines an OutputIterator that contains a tuple of output iterators, and dispatches among those based on the type of the value type which is put in it.
Besides defining assignment for all parameters of V and for a tuple of type V, it is also defined for the types boost::variant<T...> and boost::optional<boost::variant<T...>>, where T... must be a subset of the parameters of V. Should the boost::optional be empty, it will be discarded.
Parameters
| V | must be a CGAL::cpp11::tuple<...> of the types of values to be accepted and dispatched. |
| O | must be a CGAL::cpp11::tuple<...> of the types of corresponding output iterators. |
cgalExample{STL_Extension/Dispatch_output_iterator.cpp}
CGAL::Dispatch_output_iterator<V,O> Related Functions | |
(Note that these are not member functions.) | |
| template<typename... V, typename... O> | |
| Dispatch_or_drop_output_iterator < tuple< V...>, tuple< O...> > | dispatch_or_drop_output (O...o) |
Types | |
| typedef V | Value_type_tuple |
| typedef O | Iterator_tuple |
Creation | |
| Dispatch_or_drop_output_iterator (I...o) | |
| Constructor taking all the output iterators. More... | |
| const Iterator_tuple & | get_iterator_tuple () const |
| returns a reference to the tuple of output iterators. More... | |
| typedef O CGAL::Dispatch_or_drop_output_iterator< V, O >::Iterator_tuple |
| typedef V CGAL::Dispatch_or_drop_output_iterator< V, O >::Value_type_tuple |
| CGAL::Dispatch_or_drop_output_iterator< V, O >::Dispatch_or_drop_output_iterator | ( | I... | o | ) |
Constructor taking all the output iterators.
| const Iterator_tuple& CGAL::Dispatch_or_drop_output_iterator< V, O >::get_iterator_tuple | ( | ) | const |
returns a reference to the tuple of output iterators.
|
related |
Dispatch_or_drop_output_iterator constructed from the arguments.