CGAL 6.1 - STL Extensions for CGAL

Loading...
Searching...
No Matches
List of all members | Related Functions
CGAL::Dispatch_output_iterator< V, O > Class Template Reference
Reference Manual » Iterators and Iterator/Circulator Adaptors

`#include <CGAL/iterator.h>`

## Inherits from

O.

## Definition

template<typename V, typename O>
class CGAL::Dispatch_output_iterator< V, O >

The class `Dispatch_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.

Other types are also accepted, and the object is discarded in this case. Besides defining assignment for all parameters of `V` and for a tuple of type `V`, it is also defined for the types `std::variant<T...>` and `std::optional<std::variant<T...> >`, where `T...` can be a list of arbitrary types.

It also inherits from `O`, which makes it easy to treat like a tuple.

Parameters

Template Parameters

  V | must be a `std::tuple<...>` of the types of values to be accepted and dispatched.
  O | must be a `std::tuple<...>` of the types of corresponding output iterators.

Is model of
  `OutputIterator`

See also
  `CGAL::Dispatch_or_drop_output_iterator<V,O>`

Examples
  STL_Extension/Dispatch_output_iterator.cpp.

## Related Functions
(Note that these are not member functions.)
template<typename... V, typename... O>
Dispatch_output_iterator< tuple< V... >, tuple< O... > > | dispatch_output (O... o)

## Types
typedef V | Value_type_tuple
typedef O | Iterator_tuple

## Creation
| Dispatch_output_iterator (I...o)
| Constructor taking all the output iterators.
const Iterator_tuple & | get_iterator_tuple () const
| returns a reference to the tuple of output iterators.

## Friends And Related Function Documentation

## ◆ dispatch_output()

template<typename... V, typename... O>

Dispatch_output_iterator< tuple< V... >, tuple< O... > > dispatch_output | ( | O... | o | ) |
| related

Returns
  a `Dispatch_output_iterator` constructed from the arguments.