IntIterHelpers

## Classes

class | Cgu::IntIter
| An iterator class providing a lazy integer range over a virtual container. More...

## Functions

bool | Cgu::operator== (IntIter iter1, IntIter iter2) noexcept
bool | Cgu::operator!= (IntIter iter1, IntIter iter2) noexcept
bool | Cgu::operator< (IntIter iter1, IntIter iter2) noexcept
bool | Cgu::operator> (IntIter iter1, IntIter iter2) noexcept
bool | Cgu::operator<= (IntIter iter1, IntIter iter2) noexcept
bool | Cgu::operator>= (IntIter iter1, IntIter iter2) noexcept
IntIter::difference_type | Cgu::operator- (IntIter iter1, IntIter iter2) noexcept
IntIter | Cgu::operator+ (IntIter iter, IntIter::difference_type n) noexcept
IntIter | Cgu::operator- (IntIter iter, IntIter::difference_type n) noexcept
IntIter | Cgu::operator+ (IntIter::difference_type n, IntIter iter) noexcept

## Detailed Description

## Function Documentation

## operator!=()

bool Cgu::operator!= | ( | IntIter | iter1,
|  | IntIter | iter2
| ) |  |

inline noexcept

This comparison operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator+() [1/2]

IntIter Cgu::operator+ | ( | IntIter | iter,
|  | IntIter::difference_type | n
| ) |  |

inline noexcept

This operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator+() [2/2]

IntIter Cgu::operator+ | ( | IntIter::difference_type | n,
|  | IntIter | iter
| ) |  |

inline noexcept

This operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator-() [1/2]

IntIter Cgu::operator- | ( | IntIter | iter,
|  | IntIter::difference_type | n
| ) |  |

inline noexcept

This operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator-() [2/2]

IntIter::difference_type Cgu::operator- | ( | IntIter | iter1,
|  | IntIter | iter2
| ) |  |

inline noexcept

This operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator<()

bool Cgu::operator< | ( | IntIter | iter1,
|  | IntIter | iter2
| ) |  |

inline noexcept

This comparison operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator<=()

bool Cgu::operator<= | ( | IntIter | iter1,
|  | IntIter | iter2
| ) |  |

inline noexcept

This comparison operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls the functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator==()

bool Cgu::operator== | ( | IntIter | iter1,
|  | IntIter | iter2
| ) |  |

inline noexcept

This comparison operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator>()

bool Cgu::operator> | ( | IntIter | iter1,
|  | IntIter | iter2
| ) |  |

inline noexcept

This comparison operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.

## operator>=()

bool Cgu::operator>= | ( | IntIter | iter1,
|  | IntIter | iter2
| ) |  |

inline noexcept

This comparison operator does not throw. No locking is carried out, so if one of the iterators is accessed in more than one thread and a thread calls a non-const method, the user must provide synchronization (but Cgu::Thread::parallel_for_each(), Cgu::Thread::parallel_for_each_partial(), Cgu::Thread::parallel_transform() and Cgu::Thread::parallel_transform_partial() only access source and destination iterators in the thread which calls those functions, so use of an IntIter object only by one of those functions does not require synchronization).

Since 2.0.27 and 2.2.10.