c++-gtk-utils
Classes | Functions
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)
 
bool Cgu::operator!= (IntIter iter1, IntIter iter2)
 
bool Cgu::operator< (IntIter iter1, IntIter iter2)
 
bool Cgu::operator> (IntIter iter1, IntIter iter2)
 
bool Cgu::operator<= (IntIter iter1, IntIter iter2)
 
bool Cgu::operator>= (IntIter iter1, IntIter iter2)
 
IntIter::difference_type Cgu::operator- (IntIter iter1, IntIter iter2)
 
IntIter Cgu::operator+ (IntIter iter, IntIter::difference_type n)
 
IntIter Cgu::operator- (IntIter iter, IntIter::difference_type n)
 
IntIter Cgu::operator+ (IntIter::difference_type n, IntIter iter)
 

Detailed Description

Function Documentation

◆ operator!=()

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

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.

◆ operator+() [1/2]

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

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.

◆ operator+() [2/2]

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

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.

◆ operator-() [1/2]

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

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.

◆ operator-() [2/2]

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

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.

◆ operator<()

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

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.

◆ operator<=()

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

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.

◆ operator==()

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

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.

◆ operator>()

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

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.

◆ operator>=()

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

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.