#include <CGAL/basic.h>
#include <cstddef>
#include <functional>
#include <iterator>
#include <CGAL/circulator_bases.h>
Go to the source code of this file.
Functions | |
template<class C > | |
Circulator_traits< C >::category | query_circulator_or_iterator (const C &) |
template<class Tag , class Derived > | |
void | Assert_compile_time_tag (const Tag &, const Derived &b) |
template<class C > | |
void | Assert_circulator (const C &c) |
template<class I > | |
void | Assert_iterator (const I &i) |
template<class I > | |
void | Assert_input_category (const I &i) |
template<class I > | |
void | Assert_output_category (const I &i) |
template<class IC > | |
void | Assert_forward_category (const IC &ic) |
template<class IC > | |
void | Assert_bidirectional_category (const IC &ic) |
template<class IC > | |
void | Assert_random_access_category (const IC &ic) |
void | I_Has_to_be_at_least (std::input_iterator_tag, std::input_iterator_tag) |
void | I_Has_to_be_at_least (std::input_iterator_tag, std::forward_iterator_tag) |
void | I_Has_to_be_at_least (std::input_iterator_tag, std::bidirectional_iterator_tag) |
void | I_Has_to_be_at_least (std::input_iterator_tag, std::random_access_iterator_tag) |
void | I_Has_to_be_at_least (std::output_iterator_tag, std::output_iterator_tag) |
void | I_Has_to_be_at_least (std::output_iterator_tag, std::forward_iterator_tag) |
void | I_Has_to_be_at_least (std::output_iterator_tag, std::bidirectional_iterator_tag) |
void | I_Has_to_be_at_least (std::output_iterator_tag, std::random_access_iterator_tag) |
void | I_Has_to_be_at_least (std::forward_iterator_tag, std::forward_iterator_tag) |
void | I_Has_to_be_at_least (std::forward_iterator_tag, std::bidirectional_iterator_tag) |
void | I_Has_to_be_at_least (std::forward_iterator_tag, std::random_access_iterator_tag) |
void | I_Has_to_be_at_least (std::bidirectional_iterator_tag, std::bidirectional_iterator_tag) |
void | I_Has_to_be_at_least (std::bidirectional_iterator_tag, std::random_access_iterator_tag) |
void | I_Has_to_be_at_least (std::random_access_iterator_tag, std::random_access_iterator_tag) |
template<class I > | |
void | Assert_is_at_least_input_category (const I &i) |
template<class I > | |
void | Assert_is_at_least_output_category (const I &i) |
template<class IC > | |
void | Assert_is_at_least_forward_category (const IC &ic) |
template<class IC > | |
void | Assert_is_at_least_bidirectional_category (const IC &ic) |
template<class IC > | |
void | Assert_is_at_least_random_access_category (const IC &ic) |
template<class C > | |
bool | I_is_empty_range (const C &c1, const C &, Circulator_tag) |
template<class I > | |
bool | I_is_empty_range (const I &i1, const I &i2, Iterator_tag) |
template<class IC > | |
bool | is_empty_range (const IC &ic1, const IC &ic2) |
Circulator_or_iterator_tag | check_circulator_or_iterator (Circulator_tag) |
Circulator_or_iterator_tag | check_circulator_or_iterator (Iterator_tag) |
template<class IC > | |
void | Assert_circulator_or_iterator (const IC &ic) |
template<class C > | |
C::size_type | I_min_circulator_size (const C &c) |
template<class C > | |
C::size_type | I_circulator_size (const C &c, Forward_circulator_tag) |
template<class C > | |
C::size_type | I_circulator_size (const C &c, Bidirectional_circulator_tag) |
template<class C > | |
C::size_type | I_circulator_size (const C &c, Random_access_circulator_tag) |
template<class C > | |
C::size_type | circulator_size (const C &c) |
template<class C > | |
C::difference_type | I_circulator_distance (C c, const C &d, Forward_circulator_tag) |
template<class C > | |
C::difference_type | I_circulator_distance (const C &c, const C &d, Bidirectional_circulator_tag) |
template<class C > | |
C::difference_type | I_circulator_distance (const C &c, const C &d, Random_access_circulator_tag) |
template<class C > | |
C::difference_type | circulator_distance (const C &c, const C &d) |
template<class C > | |
std::iterator_traits< C > ::difference_type | I_iterator_distance (const C &c1, const C &c2, Circulator_tag) |
template<class I > | |
std::iterator_traits< I > ::difference_type | I_iterator_distance (const I &i1, const I &i2, Iterator_tag) |
template<class IC > | |
std::iterator_traits< IC > ::difference_type | iterator_distance (const IC &ic1, const IC &ic2) |
template<class C > | |
C | I_get_min_circulator (C c, Forward_circulator_tag) |
template<class C > | |
C | I_get_min_circulator (C c, Bidirectional_circulator_tag) |
template<class C > | |
C | I_get_min_circulator (C c, Random_access_circulator_tag) |
template<class C > | |
C | get_min_circulator (C c) |
template<class I , class U > | |
I | non_negative_mod (I n, U m) |
template<class Dist , class C , class Ref , class Ptr > | |
Iterator_from_circulator< C, Ref, Ptr > | operator+ (Dist n, const Iterator_from_circulator< C, Ref, Ptr > &circ) |
template<class Ctnr > | |
Circulator_from_container< Ctnr > | operator+ (typename Circulator_from_container< Ctnr >::difference_type n, const Circulator_from_container< Ctnr > &c) |
template<class Ctnr > | |
Const_circulator_from_container < Ctnr > | operator+ (typename Const_circulator_from_container< Ctnr >::difference_type n, const Const_circulator_from_container< Ctnr > &c) |
template<class D , class I , class T , class Size , class Dist > | |
Circulator_from_iterator< I, T, Size, Dist > | operator+ (D n, const Circulator_from_iterator< I, T, Size, Dist > &circ) |
#define Bidirectional_circulator_from_container Circulator_from_container |
Definition at line 110 of file circulator.h.
#define Bidirectional_circulator_from_iterator Circulator_from_iterator |
Definition at line 99 of file circulator.h.
#define Bidirectional_const_circulator_from_container Const_circulator_from_container |
Definition at line 117 of file circulator.h.
#define Bidirectional_const_circulator_from_iterator Circulator_from_iterator |
Definition at line 101 of file circulator.h.
#define Bidirectional_container_from_circulator Container_from_circulator |
Definition at line 90 of file circulator.h.
#define CGAL_ASSERT_COMPILE_TIME_TAG 1 |
Definition at line 230 of file circulator.h.
#define CGAL_CIRC_NULL NULL |
Definition at line 81 of file circulator.h.
Referenced by Container_from_circulator< C >::end(), I_circulator_distance(), I_circulator_size(), I_is_empty_range(), I_min_circulator_size(), Iterator_from_circulator< C, Ref, Ptr >::operator*(), Iterator_from_circulator< C, Ref, Ptr >::operator++(), Iterator_from_circulator< C, Ref, Ptr >::operator+=(), Iterator_from_circulator< C, Ref, Ptr >::operator-(), Iterator_from_circulator< C, Ref, Ptr >::operator--(), Iterator_from_circulator< C, Ref, Ptr >::operator->(), Iterator_from_circulator< C, Ref, Ptr >::operator<(), Circulator_from_container< Ctnr >::operator==(), Const_circulator_from_container< Ctnr >::operator==(), and Circulator_from_iterator< I, TT, SS, DD >::operator==().
#define CGAL_For_all | ( | ic1, | |
ic2 | |||
) |
Definition at line 389 of file circulator.h.
#define CGAL_For_all_backwards | ( | ic1, | |
ic2 | |||
) |
Definition at line 394 of file circulator.h.
#define CGAL_NULL_TYPE int |
Definition at line 80 of file circulator.h.
#define CGAL_PROTECT_CSTDDEF |
Definition at line 60 of file circulator.h.
#define CGAL_PROTECT_FUNCTIONAL |
Definition at line 64 of file circulator.h.
#define CGAL_PROTECT_ITERATOR |
Definition at line 68 of file circulator.h.
#define Forward_circulator_from_container Circulator_from_container |
Definition at line 108 of file circulator.h.
#define Forward_circulator_from_iterator Circulator_from_iterator |
Definition at line 95 of file circulator.h.
#define Forward_const_circulator_from_container Const_circulator_from_container |
Definition at line 115 of file circulator.h.
#define Forward_const_circulator_from_iterator Circulator_from_iterator |
Definition at line 97 of file circulator.h.
#define Forward_container_from_circulator Container_from_circulator |
Definition at line 88 of file circulator.h.
#define Random_access_circulator_from_container Circulator_from_container |
Definition at line 112 of file circulator.h.
#define Random_access_circulator_from_iterator Circulator_from_iterator |
Definition at line 103 of file circulator.h.
#define Random_access_const_circulator_from_container Const_circulator_from_container |
Definition at line 119 of file circulator.h.
#define Random_access_const_circulator_from_iterator Circulator_from_iterator |
Definition at line 105 of file circulator.h.
#define Random_access_container_from_circulator Container_from_circulator |
Definition at line 92 of file circulator.h.
|
inline |
Definition at line 269 of file circulator.h.
References Assert_compile_time_tag().
|
inline |
Definition at line 243 of file circulator.h.
References Assert_compile_time_tag(), and query_circulator_or_iterator().
Referenced by I_min_circulator_size().
|
inline |
Definition at line 383 of file circulator.h.
References Assert_compile_time_tag(), check_circulator_or_iterator(), and query_circulator_or_iterator().
|
inline |
Definition at line 236 of file circulator.h.
References I_Assert_tag_class< Base >::match_compile_time_tag(), and x.
|
inline |
Definition at line 263 of file circulator.h.
References Assert_compile_time_tag().
|
inline |
Definition at line 251 of file circulator.h.
References Assert_compile_time_tag().
|
inline |
Definition at line 339 of file circulator.h.
References I_Has_to_be_at_least().
|
inline |
Definition at line 333 of file circulator.h.
References I_Has_to_be_at_least().
|
inline |
Definition at line 321 of file circulator.h.
References I_Has_to_be_at_least().
|
inline |
Definition at line 327 of file circulator.h.
References I_Has_to_be_at_least().
|
inline |
Definition at line 345 of file circulator.h.
References I_Has_to_be_at_least().
|
inline |
Definition at line 247 of file circulator.h.
References Assert_compile_time_tag(), and query_circulator_or_iterator().
|
inline |
Definition at line 257 of file circulator.h.
References Assert_compile_time_tag().
|
inline |
Definition at line 276 of file circulator.h.
References Assert_compile_time_tag().
Referenced by I_min_circulator_size().
|
inline |
Definition at line 373 of file circulator.h.
Referenced by Assert_circulator_or_iterator().
|
inline |
Definition at line 378 of file circulator.h.
|
inline |
Definition at line 481 of file circulator.h.
References I_circulator_distance().
Referenced by I_iterator_distance().
|
inline |
Definition at line 443 of file circulator.h.
References I_circulator_size().
|
inline |
Definition at line 517 of file circulator.h.
References I_get_min_circulator().
C::difference_type I_circulator_distance | ( | C | c, |
const C & | d, | ||
Forward_circulator_tag | |||
) |
Definition at line 450 of file circulator.h.
References CGAL_CIRC_NULL, and n.
Referenced by circulator_distance(), and I_circulator_distance().
|
inline |
Definition at line 463 of file circulator.h.
References I_circulator_distance().
|
inline |
Definition at line 469 of file circulator.h.
References I_min_circulator_size().
C::size_type I_circulator_size | ( | const C & | c, |
Forward_circulator_tag | |||
) |
Definition at line 417 of file circulator.h.
References CGAL_CIRC_NULL, d, and n.
Referenced by circulator_size(), and I_circulator_size().
|
inline |
Definition at line 432 of file circulator.h.
References I_circulator_size().
|
inline |
Definition at line 437 of file circulator.h.
References I_min_circulator_size().
|
inline |
Definition at line 505 of file circulator.h.
Referenced by get_min_circulator().
|
inline |
Definition at line 509 of file circulator.h.
|
inline |
Definition at line 513 of file circulator.h.
|
inline |
Definition at line 286 of file circulator.h.
Referenced by Assert_is_at_least_bidirectional_category(), Assert_is_at_least_forward_category(), Assert_is_at_least_input_category(), Assert_is_at_least_output_category(), and Assert_is_at_least_random_access_category().
|
inline |
Definition at line 288 of file circulator.h.
|
inline |
Definition at line 290 of file circulator.h.
|
inline |
Definition at line 292 of file circulator.h.
|
inline |
Definition at line 295 of file circulator.h.
|
inline |
Definition at line 297 of file circulator.h.
|
inline |
Definition at line 299 of file circulator.h.
|
inline |
Definition at line 301 of file circulator.h.
|
inline |
Definition at line 304 of file circulator.h.
|
inline |
Definition at line 306 of file circulator.h.
|
inline |
Definition at line 308 of file circulator.h.
|
inline |
Definition at line 311 of file circulator.h.
|
inline |
Definition at line 313 of file circulator.h.
|
inline |
Definition at line 316 of file circulator.h.
|
inline |
Definition at line 352 of file circulator.h.
References CGAL_CIRC_NULL.
Referenced by is_empty_range().
|
inline |
Definition at line 357 of file circulator.h.
|
inline |
Definition at line 488 of file circulator.h.
References circulator_distance().
Referenced by iterator_distance().
|
inline |
Definition at line 494 of file circulator.h.
|
inline |
Definition at line 403 of file circulator.h.
References Assert_circulator(), Assert_random_access_category(), CGAL_assertion, CGAL_CIRC_NULL, and n.
Referenced by I_circulator_distance(), I_circulator_size(), and Iterator_from_circulator< C, Ref, Ptr >::operator-().
|
inline |
Definition at line 362 of file circulator.h.
References I_is_empty_range(), and query_circulator_or_iterator().
Referenced by Random_access_adaptor< IC >::init_index().
|
inline |
Definition at line 500 of file circulator.h.
References I_iterator_distance(), and query_circulator_or_iterator().
|
inline |
Definition at line 523 of file circulator.h.
References CGAL_postcondition, CGAL_precondition, and n.
Referenced by Circulator_from_container< Ctnr >::operator+=(), Const_circulator_from_container< Ctnr >::operator+=(), and Circulator_from_iterator< I, TT, SS, DD >::operator+=().
Iterator_from_circulator<C,Ref,Ptr> operator+ | ( | Dist | n, |
const Iterator_from_circulator< C, Ref, Ptr > & | circ | ||
) |
|
inline |
|
inline |
|
inline |
Definition at line 1205 of file circulator.h.
Circulator_traits<C>::category query_circulator_or_iterator | ( | const C & | ) |
Definition at line 222 of file circulator.h.
Referenced by Assert_circulator(), Assert_circulator_or_iterator(), Assert_iterator(), is_empty_range(), and iterator_distance().