#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().
