16 #ifndef dealii_synchronous_iterator_h
17 #define dealii_synchronous_iterator_h
49 template <
typename Iterators>
80 template <
typename Iterators>
87 template <
typename Iterators>
88 inline const Iterators &
96 template <
typename Iterators>
113 template <
typename Iterators>
118 return std::get<0>(*a) < std::get<0>(*
b);
130 template <
typename Iterators>
135 Assert(std::distance(std::get<0>(*
b), std::get<0>(*a)) >= 0,
137 return std::distance(std::get<0>(*
b), std::get<0>(*a));
146 template <
typename I1,
typename I2>
148 advance(std::tuple<I1, I2> &t,
const unsigned int n)
159 template <
typename I1,
typename I2,
typename I3>
161 advance(std::tuple<I1, I2, I3> &t,
const unsigned int n)
173 template <
typename I1,
typename I2,
typename I3,
typename I4>
175 advance(std::tuple<I1, I2, I3, I4> &t,
const unsigned int n)
190 template <
typename I1,
typename I2>
203 template <
typename I1,
typename I2,
typename I3>
217 template <
typename I1,
typename I2,
typename I3,
typename I4>
234 template <
typename Iterators>
248 template <
typename Iterators>
263 template <
typename Iterators>
268 return (std::get<0>(*a) != std::get<0>(*
b));
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
static ::ExceptionBase & ExcInternalError()
#define Assert(cond, exc)
SymmetricTensor< 2, dim, Number > b(const Tensor< 2, dim, Number > &F)
void advance_by_one(std::tuple< I1, I2, I3 > &t)
bool operator!=(const SynchronousIterators< Iterators > &a, const SynchronousIterators< Iterators > &b)
SynchronousIterators< Iterators > operator++(SynchronousIterators< Iterators > &a)
void advance(std::tuple< I1, I2, I3, I4 > &t, const unsigned int n)
SynchronousIterators< Iterators > operator+(const SynchronousIterators< Iterators > &a, const std::size_t n)
std::size_t operator-(const SynchronousIterators< Iterators > &a, const SynchronousIterators< Iterators > &b)
void advance(std::tuple< I1, I2, I3 > &t, const unsigned int n)
SynchronousIterators(const Iterators &i)
bool operator<(const SynchronousIterators< Iterators > &a, const SynchronousIterators< Iterators > &b)
void advance(std::tuple< I1, I2 > &t, const unsigned int n)
void advance_by_one(std::tuple< I1, I2 > &t)
const Iterators & operator*() const
void advance_by_one(std::tuple< I1, I2, I3, I4 > &t)
void advance(std::tuple< I1, I2 > &t, const unsigned int n)