From 9ebdfab34bbf5d3508b3b4c2693aec7deaf6b421 Mon Sep 17 00:00:00 2001 From: Steven Watanabe Date: Sun, 28 Feb 2010 19:19:07 +0000 Subject: [PATCH] Create a branch for autoprefixing [SVN r59996] --- development/boost/iterator_categories.hpp | 159 ----- development/boost/iterator_concepts.hpp | 172 ----- development/libs/iterator/concept_tests.cpp | 73 -- .../libs/iterator/iterator_categories.htm | 160 ----- .../libs/iterator/iterator_concepts.fig | 37 - .../libs/iterator/iterator_concepts.gif | Bin 3287 -> 0 bytes .../libs/iterator/iterator_concepts.htm | 663 ------------------ doc/BidirectionalTraversal.rst | 0 doc/ForwardTraversal.rst | 0 doc/GNUmakefile | 0 doc/IncrementableIterator.rst | 0 doc/LvalueIterator.rst | 0 doc/ReadableIterator.rst | 0 doc/SinglePassIterator.rst | 0 doc/SwappableIterator.rst | 0 doc/WritableIterator.rst | 0 doc/counting_iterator.pdf | Bin doc/docutils.sty | 0 doc/facade-and-adaptor.html | 0 doc/facade-and-adaptor.pdf | Bin doc/facade_iterator_category.rst | 0 doc/filter_iterator.pdf | Bin doc/function_output_iterator.pdf | Bin doc/index.html | 0 doc/index.rst | 0 doc/indirect_iterator.pdf | Bin doc/indirect_reference_ref.rst | 0 doc/interoperability-revisited.rst | 0 doc/issues.rst | 0 doc/iterator_adaptor.pdf | Bin doc/iterator_adaptor_tutorial.rst | 0 doc/iterator_archetypes.html | 0 doc/iterator_archetypes.pdf | Bin doc/iterator_archetypes.rst | 0 doc/iterator_concepts.pdf | Bin doc/iterator_concepts.rst | 0 doc/iterator_facade.pdf | Bin doc/iterator_facade_tutorial.rst | 0 doc/iterator_traits.html | 0 doc/iterator_traits.pdf | Bin doc/iterator_traits.rst | 0 doc/make_counting_iterator.rst | 0 doc/make_filter_iterator.rst | 0 doc/make_transform_iterator.rst | 0 doc/make_zip_iterator.rst | 0 doc/new-iter-concepts.html | 0 doc/new-iter-concepts.pdf | Bin doc/permutation_iterator.pdf | Bin doc/pointee.html | 0 doc/pointee.pdf | Bin doc/pointee.rst | 0 doc/pointee_ref.rst | 0 doc/reverse_iterator.pdf | Bin doc/transform_iterator.pdf | Bin doc/transform_iterator_eg.rst | 0 doc/zip_iterator.html | 0 doc/zip_iterator.pdf | Bin doc/zip_iterator.rst | 0 doc/zip_iterator_abstract.rst | 0 doc/zip_iterator_eg.rst | 0 doc/zip_iterator_ref.rst | 0 example/node.hpp | 0 example/node_iterator1.cpp | 0 example/node_iterator1.hpp | 0 example/node_iterator2.cpp | 0 example/node_iterator2.hpp | 0 example/node_iterator3.cpp | 0 example/node_iterator3.hpp | 0 .../iterator/detail/any_conversion_eater.hpp | 0 .../detail/facade_iterator_category.hpp | 0 .../iterator/detail/minimum_category.hpp | 0 include/boost/iterator/is_lvalue_iterator.hpp | 0 .../boost/iterator/is_readable_iterator.hpp | 0 include/boost/pointee.hpp | 0 index.html | 0 test/constant_iter_arrow.cpp | 0 test/constant_iter_arrow_fail.cpp | 0 test/interoperable.cpp | 0 test/is_lvalue_iterator.cpp | 0 test/is_readable_iterator.cpp | 0 test/iter_archetype_default_ctor.cpp | 0 test/pointee.cpp | 0 82 files changed, 1264 deletions(-) delete mode 100644 development/boost/iterator_categories.hpp delete mode 100644 development/boost/iterator_concepts.hpp delete mode 100644 development/libs/iterator/concept_tests.cpp delete mode 100644 development/libs/iterator/iterator_categories.htm delete mode 100644 development/libs/iterator/iterator_concepts.fig delete mode 100644 development/libs/iterator/iterator_concepts.gif delete mode 100644 development/libs/iterator/iterator_concepts.htm mode change 100755 => 100644 doc/BidirectionalTraversal.rst mode change 100755 => 100644 doc/ForwardTraversal.rst mode change 100755 => 100644 doc/GNUmakefile mode change 100755 => 100644 doc/IncrementableIterator.rst mode change 100755 => 100644 doc/LvalueIterator.rst mode change 100755 => 100644 doc/ReadableIterator.rst mode change 100755 => 100644 doc/SinglePassIterator.rst mode change 100755 => 100644 doc/SwappableIterator.rst mode change 100755 => 100644 doc/WritableIterator.rst mode change 100755 => 100644 doc/counting_iterator.pdf mode change 100755 => 100644 doc/docutils.sty mode change 100755 => 100644 doc/facade-and-adaptor.html mode change 100755 => 100644 doc/facade-and-adaptor.pdf mode change 100755 => 100644 doc/facade_iterator_category.rst mode change 100755 => 100644 doc/filter_iterator.pdf mode change 100755 => 100644 doc/function_output_iterator.pdf mode change 100755 => 100644 doc/index.html mode change 100755 => 100644 doc/index.rst mode change 100755 => 100644 doc/indirect_iterator.pdf mode change 100755 => 100644 doc/indirect_reference_ref.rst mode change 100755 => 100644 doc/interoperability-revisited.rst mode change 100755 => 100644 doc/issues.rst mode change 100755 => 100644 doc/iterator_adaptor.pdf mode change 100755 => 100644 doc/iterator_adaptor_tutorial.rst mode change 100755 => 100644 doc/iterator_archetypes.html mode change 100755 => 100644 doc/iterator_archetypes.pdf mode change 100755 => 100644 doc/iterator_archetypes.rst mode change 100755 => 100644 doc/iterator_concepts.pdf mode change 100755 => 100644 doc/iterator_concepts.rst mode change 100755 => 100644 doc/iterator_facade.pdf mode change 100755 => 100644 doc/iterator_facade_tutorial.rst mode change 100755 => 100644 doc/iterator_traits.html mode change 100755 => 100644 doc/iterator_traits.pdf mode change 100755 => 100644 doc/iterator_traits.rst mode change 100755 => 100644 doc/make_counting_iterator.rst mode change 100755 => 100644 doc/make_filter_iterator.rst mode change 100755 => 100644 doc/make_transform_iterator.rst mode change 100755 => 100644 doc/make_zip_iterator.rst mode change 100755 => 100644 doc/new-iter-concepts.html mode change 100755 => 100644 doc/new-iter-concepts.pdf mode change 100755 => 100644 doc/permutation_iterator.pdf mode change 100755 => 100644 doc/pointee.html mode change 100755 => 100644 doc/pointee.pdf mode change 100755 => 100644 doc/pointee.rst mode change 100755 => 100644 doc/pointee_ref.rst mode change 100755 => 100644 doc/reverse_iterator.pdf mode change 100755 => 100644 doc/transform_iterator.pdf mode change 100755 => 100644 doc/transform_iterator_eg.rst mode change 100755 => 100644 doc/zip_iterator.html mode change 100755 => 100644 doc/zip_iterator.pdf mode change 100755 => 100644 doc/zip_iterator.rst mode change 100755 => 100644 doc/zip_iterator_abstract.rst mode change 100755 => 100644 doc/zip_iterator_eg.rst mode change 100755 => 100644 doc/zip_iterator_ref.rst mode change 100755 => 100644 example/node.hpp mode change 100755 => 100644 example/node_iterator1.cpp mode change 100755 => 100644 example/node_iterator1.hpp mode change 100755 => 100644 example/node_iterator2.cpp mode change 100755 => 100644 example/node_iterator2.hpp mode change 100755 => 100644 example/node_iterator3.cpp mode change 100755 => 100644 example/node_iterator3.hpp mode change 100755 => 100644 include/boost/iterator/detail/any_conversion_eater.hpp mode change 100755 => 100644 include/boost/iterator/detail/facade_iterator_category.hpp mode change 100755 => 100644 include/boost/iterator/detail/minimum_category.hpp mode change 100755 => 100644 include/boost/iterator/is_lvalue_iterator.hpp mode change 100755 => 100644 include/boost/iterator/is_readable_iterator.hpp mode change 100755 => 100644 include/boost/pointee.hpp mode change 100755 => 100644 index.html mode change 100755 => 100644 test/constant_iter_arrow.cpp mode change 100755 => 100644 test/constant_iter_arrow_fail.cpp mode change 100755 => 100644 test/interoperable.cpp mode change 100755 => 100644 test/is_lvalue_iterator.cpp mode change 100755 => 100644 test/is_readable_iterator.cpp mode change 100755 => 100644 test/iter_archetype_default_ctor.cpp mode change 100755 => 100644 test/pointee.cpp diff --git a/development/boost/iterator_categories.hpp b/development/boost/iterator_categories.hpp deleted file mode 100644 index 138a5be..0000000 --- a/development/boost/iterator_categories.hpp +++ /dev/null @@ -1,159 +0,0 @@ -#ifndef BOOST_ITERATOR_CATEGORIES_HPP -#define BOOST_ITERATOR_CATEGORIES_HPP - -#include -#include -#include -#include -#include - -namespace boost { - - // Return Type Categories - struct readable_iterator_tag { }; - struct writable_iterator_tag { }; - struct swappable_iterator_tag { }; - struct mutable_lvalue_iterator_tag : - virtual public writable_iterator_tag, - virtual public readable_iterator_tag { }; - struct constant_lvalue_iterator_tag : - virtual public readable_iterator_tag { }; - - // Traversal Categories - struct forward_traversal_tag { }; - struct bidirectional_traversal_tag : public forward_traversal_tag { }; - struct random_access_traversal_tag : public bidirectional_traversal_tag { }; - - struct error_iterator_tag { }; - - // Inherit from iterator_base if your iterator defines its own - // return_category and traversal_category. Otherwise, the "old style" - // iterator category will be mapped to the return_category and - // traversal_category. - struct new_iterator_base { }; - - namespace detail { - - struct return_category_from_nested_type { - template struct bind { - typedef typename Iterator::return_category type; - }; - }; - - struct traversal_category_from_nested_type { - template struct bind { - typedef typename Iterator::traversal_category type; - }; - }; - - template - struct choose_lvalue_return { - typedef typename ct_if::value, - boost::constant_lvalue_iterator_tag, - boost::mutable_lvalue_iterator_tag>::type type; - }; - - - template - struct iter_category_to_return { - typedef typename ct_if< - is_convertible::value, - typename choose_lvalue_return::type, - typename ct_if< - is_convertible::value, - boost::readable_iterator_tag, - typename ct_if< - is_convertible::value, - boost::writable_iterator_tag, - boost::error_iterator_tag - >::type - >::type - >::type type; - }; - - template - struct iter_category_to_traversal { - typedef typename ct_if< - is_convertible::value, - random_access_traversal_tag, - typename ct_if< - is_convertible::value, - bidirectional_traversal_tag, - forward_traversal_tag - >::type - >::type type; - }; - - struct return_category_from_old_traits { - template class bind { - typedef boost::detail::iterator_traits OldTraits; - typedef typename OldTraits::iterator_category Cat; - typedef typename OldTraits::value_type value_type; - public: - typedef iter_category_to_return::type type; - }; - }; - - struct traversal_category_from_old_traits { - template class bind { - typedef boost::detail::iterator_traits OldTraits; - typedef typename OldTraits::iterator_category Cat; - public: - typedef iter_category_to_traversal::type type; - }; - }; - - template - class choose_return_category { - typedef typename ct_if::value, - return_category_from_nested_type, - return_category_from_old_traits>::type Choice; - public: - typedef typename Choice:: template bind::type type; - }; - - template - class choose_traversal_category { - typedef typename ct_if::value, - traversal_category_from_nested_type, - traversal_category_from_old_traits>::type Choice; - public: - typedef typename Choice:: template bind::type type; - }; - - } // namespace detail - - template - struct return_category { - typedef typename detail::choose_return_category::type type; - }; - - - template - struct traversal_category { - typedef typename detail::choose_traversal_category::type type; - }; - -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) - - template - struct return_category - { - typedef typename ct_if::value, - constant_lvalue_iterator_tag, - mutable_lvalue_iterator_tag>::type type; - }; - - template - struct traversal_category - { - typedef random_access_traversal_tag type; - }; - -#endif - -} // namespace boost - -#endif // BOOST_ITERATOR_CATEGORIES_HPP diff --git a/development/boost/iterator_concepts.hpp b/development/boost/iterator_concepts.hpp deleted file mode 100644 index a30ff17..0000000 --- a/development/boost/iterator_concepts.hpp +++ /dev/null @@ -1,172 +0,0 @@ -#ifndef BOOST_ITERATOR_CONCEPTS_HPP -#define BOOST_ITERATOR_CONCEPTS_HPP - -#include -#include -#include -#include - -namespace boost_concepts { - // Used a different namespace here (instead of "boost") so that the - // concept descriptions do not take for granted the names in - // namespace boost. - - - //=========================================================================== - // Iterator Access Concepts - - template - class ReadableIteratorConcept { - public: - typedef typename std::iterator_traits::value_type value_type; - typedef typename std::iterator_traits::reference reference; - typedef typename boost::return_category::type return_category; - - void constraints() { - boost::function_requires< boost::SGIAssignableConcept >(); - boost::function_requires< boost::EqualityComparableConcept >(); - boost::function_requires< - boost::DefaultConstructibleConcept >(); - - BOOST_STATIC_ASSERT((boost::is_convertible::value)); - - reference r = *i; // or perhaps read(x) - value_type v(r); - boost::ignore_unused_variable_warning(v); - } - Iterator i; - }; - - template - class WritableIteratorConcept { - public: - typedef typename boost::return_category::type return_category; - - void constraints() { - boost::function_requires< boost::SGIAssignableConcept >(); - boost::function_requires< boost::EqualityComparableConcept >(); - boost::function_requires< - boost::DefaultConstructibleConcept >(); - - BOOST_STATIC_ASSERT((boost::is_convertible::value)); - - *i = v; // a good alternative could be something like write(x, v) - } - ValueType v; - Iterator i; - }; - - template - class ConstantLvalueIteratorConcept { - public: - typedef typename std::iterator_traits::value_type value_type; - typedef typename std::iterator_traits::reference reference; - typedef typename boost::return_category::type return_category; - - void constraints() { - boost::function_requires< ReadableIteratorConcept >(); - - BOOST_STATIC_ASSERT((boost::is_convertible::value)); - - BOOST_STATIC_ASSERT((boost::is_same::value)); - - reference v = *i; - boost::ignore_unused_variable_warning(v); - } - Iterator i; - }; - - template - class MutableLvalueIteratorConcept { - public: - typedef typename std::iterator_traits::value_type value_type; - typedef typename std::iterator_traits::reference reference; - typedef typename boost::return_category::type return_category; - - void constraints() { - boost::function_requires< ReadableIteratorConcept >(); - boost::function_requires< - WritableIteratorConcept >(); - - BOOST_STATIC_ASSERT((boost::is_convertible::value)); - - BOOST_STATIC_ASSERT((boost::is_same::value)); - - reference v = *i; - boost::ignore_unused_variable_warning(v); - } - Iterator i; - }; - - //=========================================================================== - // Iterator Traversal Concepts - - template - class ForwardIteratorConcept { - public: - typedef typename boost::traversal_category::type traversal_category; - - void constraints() { - boost::function_requires< boost::SGIAssignableConcept >(); - boost::function_requires< boost::EqualityComparableConcept >(); - boost::function_requires< - boost::DefaultConstructibleConcept >(); - - BOOST_STATIC_ASSERT((boost::is_convertible::value)); - ++i; - (void)i++; - } - Iterator i; - }; - - template - class BidirectionalIteratorConcept { - public: - typedef typename boost::traversal_category::type traversal_category; - - void constraints() { - boost::function_requires< ForwardIteratorConcept >(); - - BOOST_STATIC_ASSERT((boost::is_convertible::value)); - - --i; - (void)i--; - } - Iterator i; - }; - - template - class RandomAccessIteratorConcept { - public: - typedef typename boost::traversal_category::type traversal_category; - typedef typename std::iterator_traits::difference_type - difference_type; - - void constraints() { - boost::function_requires< BidirectionalIteratorConcept >(); - - BOOST_STATIC_ASSERT((boost::is_convertible::value)); - - i += n; - i = i + n; - i = n + i; - i -= n; - i = i - n; - n = i - j; - } - difference_type n; - Iterator i, j; - }; - -} // namespace boost_concepts - - -#endif // BOOST_ITERATOR_CONCEPTS_HPP diff --git a/development/libs/iterator/concept_tests.cpp b/development/libs/iterator/concept_tests.cpp deleted file mode 100644 index f75f311..0000000 --- a/development/libs/iterator/concept_tests.cpp +++ /dev/null @@ -1,73 +0,0 @@ -#include -#include - -struct new_iterator - : public boost::iterator, - public boost::new_iterator_base -{ - typedef boost::random_access_traversal_tag traversal_category; - typedef boost::mutable_lvalue_iterator_tag return_category; - - int& operator*() const { return *m_x; } - new_iterator& operator++() { return *this; } - new_iterator operator++(int) { return *this; } - new_iterator& operator--() { return *this; } - new_iterator operator--(int) { return *this; } - new_iterator& operator+=(std::ptrdiff_t) { return *this; } - new_iterator operator+(std::ptrdiff_t) { return *this; } - new_iterator& operator-=(std::ptrdiff_t) { return *this; } - std::ptrdiff_t operator-(const new_iterator&) const { return 0; } - new_iterator operator-(std::ptrdiff_t) const { return *this; } - bool operator==(const new_iterator&) const { return false; } - bool operator!=(const new_iterator&) const { return false; } - bool operator<(const new_iterator&) const { return false; } - int* m_x; -}; -new_iterator operator+(std::ptrdiff_t, new_iterator x) { return x; } - -struct old_iterator - : public boost::iterator -{ - int& operator*() const { return *m_x; } - old_iterator& operator++() { return *this; } - old_iterator operator++(int) { return *this; } - old_iterator& operator--() { return *this; } - old_iterator operator--(int) { return *this; } - old_iterator& operator+=(std::ptrdiff_t) { return *this; } - old_iterator operator+(std::ptrdiff_t) { return *this; } - old_iterator& operator-=(std::ptrdiff_t) { return *this; } - old_iterator operator-(std::ptrdiff_t) const { return *this; } - std::ptrdiff_t operator-(const old_iterator&) const { return 0; } - bool operator==(const old_iterator&) const { return false; } - bool operator!=(const old_iterator&) const { return false; } - bool operator<(const old_iterator&) const { return false; } - int* m_x; -}; -old_iterator operator+(std::ptrdiff_t, old_iterator x) { return x; } - -int -main() -{ -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) - boost::function_requires< - boost_concepts::MutableLvalueIteratorConcept >(); - boost::function_requires< - boost_concepts::RandomAccessIteratorConcept >(); - - boost::function_requires< - boost_concepts::ConstantLvalueIteratorConcept >(); - boost::function_requires< - boost_concepts::RandomAccessIteratorConcept >(); -#endif - - boost::function_requires< - boost_concepts::MutableLvalueIteratorConcept >(); - boost::function_requires< - boost_concepts::RandomAccessIteratorConcept >(); - - boost::function_requires< - boost_concepts::MutableLvalueIteratorConcept >(); - boost::function_requires< - boost_concepts::RandomAccessIteratorConcept >(); - return 0; -} diff --git a/development/libs/iterator/iterator_categories.htm b/development/libs/iterator/iterator_categories.htm deleted file mode 100644 index 83c29e5..0000000 --- a/development/libs/iterator/iterator_categories.htm +++ /dev/null @@ -1,160 +0,0 @@ - - - - Boost Iterator Traits - - - -C++ Boost -
- -

Boost Iterator Category Traits

-Header boost/iterator_categories.hpp - -

-The boost::traversal_category and -boost::return_category traits classes provides access to the -category tags for iterators that model the Boost Iterator Concepts, which are a -replacement for the iterator requirements in the C++ standard. The -other associated types of the Boost iterator concepts are accessed -through the std::iterator_traits class. - -

    -
  • traversal_category<Iter>::type   Can the iterator go forward, backward, etc.? -
  • return_category<Iter>::type   Is the iterator read or write only? - Is the dereferenced type an lvalue? -
- -

-An important feature of the boost::traversal_category and -boost::return_category classes is that they are backwards -compatible, i.e., they automatically work for iterators for which -there are valid definitions of std::iterator_traits. The old -iterator_category is mapped to the appropriate traversal and -return categories. - -

-When creating a new iterator type that is meant to work with -boost::traversal_category and -boost::return_category, you can either create a -specialization of these classes for your iterator type, or you can -provide all the necessary associated types as nested typedefs. In -this case, your iterator class will need to inherit from -new_iterator_base to let the category traits know -that it will be able to find typedefs for traversal_category -and return_category in you iterator class. - - -Each of the new iterator requirements will need a category tag. - -

-namespace boost {
-
-  // Return Type Categories
-  struct readable_iterator_tag { };
-  struct writable_iterator_tag { };
-  struct swappable_iterator_tag { };
-  struct mutable_lvalue_iterator_tag : virtual public writable_iterator_tag,
-    virtual public readable_iterator_tag { };
-  struct constant_lvalue_iterator_tag : public readable_iterator_tag { };
-
-  // Traversal Categories
-  struct forward_traversal_tag { };
-  struct bidirectional_traversal_tag : public forward_traversal_tag { };
-  struct random_access_traversal_tag : public bidirectional_traversal_tag { };
-
-}
-
- -

-The following is pseudo-code for the iterator category traits classes. - -

-namespace boost {
-
-  // Inherit from iterator_base if your iterator defines its own
-  // return_category and traversal_category. Otherwise, the "old style"
-  // iterator category will be mapped to the return_category and
-  // traversal_category.
-  struct new_iterator_base { };
-
-  template <typename Iterator>
-  struct return_category
-  {
-    // Pseudo-code
-    if (Iterator inherits from new_iterator_base) {
-      typedef typename Iterator::return_category type;
-    } else {
-      typedef std::iterator_traits<Iterator> OldTraits;
-      typedef typename OldTraits::iterator_category Cat;
-      if (Cat inherits from std::forward_iterator_tag)
-	if (is-const(T))
-	  typedef boost::constant_lvalue_iterator_tag type;
-	else
-	  typedef boost::mutable_lvalue_iterator_tag type;
-      else if (Cat inherits from std::input_iterator_tag)
-	typedef boost::readable_iterator_tag type;
-      else if (Cat inherits from std::output_iterator_tag)
-	typedef boost::writable_iterator_tag type;
-    }
-  };
-
-  template <typename T>
-  struct return_category<T*>
-  {
-    // Pseudo-code
-    if (is-const(T))
-      typedef boost::constant_lvalue_iterator_tag type;
-    else
-      typedef boost::mutable_lvalue_iterator_tag type;
-  };
-
-  template <typename Iterator>
-  struct traversal_category
-  {
-    // Pseudo-code
-    if (Iterator inherits from new_iterator_base) {
-      typedef typename Iterator::traversal_category type;
-    } else {
-      typedef std::iterator_traits<Iterator> OldTraits;
-      typedef typename OldTraits::iterator_category Cat;
-
-      if (Cat inherits from std::random_access_iterator_tag)
-	typedef boost::random_access_traversal_tag type;
-      else if (Cat inherits from std::bidirectional_iterator_tag)
-	typedef boost::bidirectional_traversal_tag type;
-      else if (Cat inherits from std::forward_iterator_tag)
-	typedef boost::forward_traversal_tag type;
-    }
-  };
-
-  template <typename T>
-  struct traversal_category<T*>
-  {
-    typedef boost::random_access_traversal_tag type;
-  };
-
-}
-
- -
-
jeremy siek
- - -Last modified: Mon Mar 19 12:59:30 EST 2001 - - - diff --git a/development/libs/iterator/iterator_concepts.fig b/development/libs/iterator/iterator_concepts.fig deleted file mode 100644 index 198205e..0000000 --- a/development/libs/iterator/iterator_concepts.fig +++ /dev/null @@ -1,37 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -6 150 2325 4275 4350 -2 1 0 1 0 7 100 0 -1 4.000 0 0 -1 1 0 2 - 1 1 1.00 60.00 120.00 - 1725 4050 1725 3450 -2 1 0 1 0 7 100 0 -1 4.000 0 0 -1 1 0 2 - 1 1 1.00 60.00 120.00 - 1725 3150 1725 2550 -4 0 0 100 0 19 18 0.0000 4 210 3180 375 2550 ForwardTraversalIterator\001 -4 0 0 100 0 19 18 0.0000 4 210 3765 225 3450 BidirectionalTraversalIterator\001 -4 0 0 100 0 19 18 0.0000 4 210 4125 150 4350 RandomAccessTraversalIterator\001 --6 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 60.00 120.00 - 4800 3600 4800 2400 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 60.00 120.00 - 6900 3000 5400 2400 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 60.00 120.00 - 6900 3000 7500 2400 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 60.00 120.00 - 6900 3000 9075 2475 -4 0 0 100 0 19 18 0.0000 4 210 2040 6600 2400 WritableIterator\001 -4 0 0 100 0 19 18 0.0000 4 210 2145 3900 2400 ReadableIterator\001 -4 0 0 50 0 19 18 0.0000 4 210 2835 5700 3300 MutableLvalueIterator\001 -4 0 0 50 0 19 18 0.0000 4 270 2355 9075 2400 SwappableIterator\001 -4 0 0 50 0 19 18 0.0000 4 210 2970 3825 3900 ConstantLvalueIterator\001 diff --git a/development/libs/iterator/iterator_concepts.gif b/development/libs/iterator/iterator_concepts.gif deleted file mode 100644 index bac35c7d13e402c6bc2fd5ff770bf444da6f4426..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3287 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 avv|wt|F#w{F3RO$?#R71Ygz~cgEatv^I|Fh diff --git a/development/libs/iterator/iterator_concepts.htm b/development/libs/iterator/iterator_concepts.htm deleted file mode 100644 index f2f8dcd..0000000 --- a/development/libs/iterator/iterator_concepts.htm +++ /dev/null @@ -1,663 +0,0 @@ - - - - -Iterator Concepts - -C++ Boost - -
- - -

Iterator Concepts

- -

The standard iterator categories and requirements are flawed because -they use a single hierarchy of requirements to address two orthogonal -issues: iterator traversal and dereference return -type. The current iterator requirement hierarchy is mainly -geared towards iterator traversal (hence the category names), while -requirements that address dereference return type sneak in at various -places. - -

-The iterator requirements should be separated into two hierarchies. -One set of concepts handles the return type semantics: -

- -The other set of concepts handles iterator traversal: - - - -The current Input Iterator and Output Iterator requirements will -continue to be used as is. Note that Input Iterator implies Readable -Iterator and Output Iterator implies Writable Iterator. - -

-Note: we considered defining a Single-Pass Iterator, which could be -combined with Readable or Writable Iterator to replace the Input and -Output Iterator requirements. We rejected this idea because there are -some differences between Input and Output Iterators that make it hard -to merge them: for example Input Iterator requires Equality Comparable -while Output Iterator does not. - - -

-
- - - -
Figure 1: -The iterator concepts and refinement relationships. -
-
-

- - -

Relationship with the standard iterator concepts

- -

-std::Input Iterator implies boost::ReadableIterator. - -

-std::Output Iterator implies boost::Writable Iterator. - -

-std::Forward Iterator refines boost::Forward Iterator and -boost::Constant Lvalue Iterator or boost::Mutable Lvalue Iterator. - -

-std::Bidirectional Iterator refines boost::Bidirectional Iterator and -boost::Constant Lvalue Iterator or boost::Mutable Lvalue Iterator. - -

-std::Random Access Iterator refines boost::Random Access Iterator and -boost::Constant Lvalue Iterator or boost::Mutable Lvalue Iterator. - - -

Notation

- - - - - - - - - - - - - - - - - -
XThe iterator type.
TThe value type of X, i.e., std::iterator_traits<X>::value_type.
x, yAn object of type X.
tAn object of type T.
- -

- -


- - -

-Readable Iterator -

- -A Readable Iterator is an iterator that dereferences to produce an -rvalue that is convertible to the value_type of the -iterator. - -

Associated Types

- - - - - - - - - - - - - - - - - - - - - -
Value typestd::iterator_traits<X>::value_typeThe type of the objects pointed to by the iterator.
Reference typestd::iterator_traits<X>::reference - The return type of dereferencing the iterator. This - type must be convertible to T. -
Return Categorystd::return_category<X>::type - A type convertible to std::readable_iterator_tag -
- -

Refinement of

- -Copy Constructible - -

Valid expressions

- - - - - - - - - - - - - - - -
NameExpressionType requirementsReturn type
Dereference*x std::iterator_traits<X>::reference
Member accessx->mT is a type with a member named m. -If m is a data member, the type of m. -If m is a member function, the return type of m. -
- -

- -


- - -

-Writable Iterator -

- -A Writable Iterator is an iterator that can be used to store a value -using the dereference-assignment expression. - -

Definitions

- -If x is an Writable Iterator of type X, then the -expression *x = a; stores the value a into -x. Note that operator=, like other C++ functions, -may be overloaded; it may, in fact, even be a template function. In -general, then, a may be any of several different types. A -type A belongs to the set of value types of X -if, for an object a of type A, *x = a; is -well-defined and does not require performing any non-trivial -conversions on a. - -

Associated Types

- - - - - - - - - -
Return Categorystd::return_category<X>::type - A type convertible to std::writable_iterator_tag -
- - - -

Refinement of

- -Copy Constructible - -

Valid expressions

- - - - - - - - - - -
NameExpressionReturn type
Dereference assignment*x = aunspecified
- -

- - -


- - -

-Swappable Iterator -

- -A Swappable Iterator is an iterator whose dereferenced values can be -swapped. - -

-Note: the requirements for Swappable Iterator are dependent on the -issues surrounding std::swap() being resolved. Here we assume -that the issue will be resolved by allowing the overload of -std::swap() for user-defined types. - -

-Note: Readable Iterator and Writable Iterator combined implies -Swappable Iterator because of the fully templated -std::swap(). However, Swappable Iterator does not imply -Readable Iterator nor Writable Iterator. - -

Associated Types

- - - - - - - - - -
Return Categorystd::return_category<X>::type - A type convertible to std::swappable_iterator_tag -
- - -

Valid expressions

- -Of the two valid expressions listed below, only one OR the -other is required. If std::iter_swap() is overloaded for -X then std::swap() is not required. If -std::iter_swap() is not overloaded for X then the -default (fully templated) version is used, which will call -std::swap() (this means changing the current requirements for -std::iter_swap()). - -

- - - - - - - - - - - - - - - - - -
NameExpressionReturn type
Iterator Swapstd::iter_swap(x, y)void
Dereference and Swapstd::swap(*x, *y)void
- -

- - -


- - -

-Constant Lvalue Iterator -

- -A Constant Lvalue Iterator is an iterator that dereferences to produce a -const reference to the pointed-to object, i.e., the associated -reference type is const T&. Changing the value -of or destroying an iterator that models Constant Lvalue Iterator does -not invalidate pointers and references previously obtained from that -iterator. - - -

Refinement of

- -Readable Iterator - -

Associated Types

- - - - - - - - - - - - - - - - - -
Reference typestd::iterator_traits<X>::reference - The return type of dereferencing the iterator, which must be - const T&. -
Return Categorystd::return_category<X>::type - A type convertible to std::constant_lvalue_iterator_tag -
- - - -

- -


- - -

-Mutable Lvalue Iterator -

- -A Mutable Lvalue Iterator is an iterator that dereferences to produce a -reference to the pointed-to object. The associated reference -type is T&. Changing the value of or destroying an -iterator that models Mutable Lvalue Iterator does not invalidate -pointers and references previously obtained from that iterator. - -

Refinement of

- -Readable Iterator, -Writable Iterator, -and Swappable Iterator. - - - -

Associated Types

- - - - - - - - - - - - - - - - - -
Reference typestd::iterator_traits<X>::referenceThe return type of dereferencing the iterator, which must be - T&.
Return Categorystd::return_category<X>::type - A type convertible to std::mutable_lvalue_iterator_tag -
- - - -

-


- - -

-Forward Traversal Iterator -

- -The Forward Iterator is an iterator that can be incremented. Also, it -is permissible to make multiple passes through the iterator's range. - -

Refinement of

- -Copy Constructible, -Assignable, -Default Constructible, and -Equality Comparable - - -

Associated types

- - - - - - - - - - - - - - -
Difference Typestd::iterator_traits<X>::difference_type - A signed integral type used for representing distances - between iterators that point into the same range. -
Traversal Categorystd::traversal_category<X>::type - A type convertible to std::forward_traversal_tag -
- -

Valid expressions

- - - - - - - - - - - - - - -
NameExpressionType requirementsReturn type
Preincrement++i X&
Postincrementi++ convertible to const X&
- -

-


- - -

-Bidirectional Traversal Iterator -

- -An iterator that can be incremented and decremented. - -

Refinement of

- -Forward Traversal Iterator - -

Associated types

- - - - - - - -
Traversal Categorystd::traversal_category<X>::type - A type convertible to std::bidirectional_traversal_tag -
- -

Valid expressions

- - - - - - - - - - - - -
NameExpressionType requirementsReturn type
Predecrement--i X&
Postdecrementi-- convertible to const X&
- -

-


- - -

-Random Access Traversal Iterator -

- -An iterator that provides constant-time methods for moving forward and -backward in arbitrary-sized steps. - -

Refinement of

- -Bidirectional Traversal Iterator and -Less Than Comparable where < is a total ordering - -

Associated types

- - - - - - - -
Traversal Categorystd::traversal_category<X>::type - A type convertible to std::random_access_traversal_tag -
- -

Valid expressions

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameExpressionType requirementsReturn type
Iterator additioni += n X&
Iterator additioni + n or n + i X
Iterator subtractioni -= n X&
Iterator subtractioni - n X
Differencei - j std::iterator_traits<X>::difference_type
Element operatori[n]X must also be a model of - Readable Iterator. std::iterator_traits<X>::reference
Element assignmenti[n] = tX must also be a model of - Writable Iterator.unspecified
- -

- -


- - -
Copyright © 2000 -Jeremy Siek, Univ.of Notre Dame (jsiek@lsc.nd.edu) -
- - - diff --git a/doc/BidirectionalTraversal.rst b/doc/BidirectionalTraversal.rst old mode 100755 new mode 100644 diff --git a/doc/ForwardTraversal.rst b/doc/ForwardTraversal.rst old mode 100755 new mode 100644 diff --git a/doc/GNUmakefile b/doc/GNUmakefile old mode 100755 new mode 100644 diff --git a/doc/IncrementableIterator.rst b/doc/IncrementableIterator.rst old mode 100755 new mode 100644 diff --git a/doc/LvalueIterator.rst b/doc/LvalueIterator.rst old mode 100755 new mode 100644 diff --git a/doc/ReadableIterator.rst b/doc/ReadableIterator.rst old mode 100755 new mode 100644 diff --git a/doc/SinglePassIterator.rst b/doc/SinglePassIterator.rst old mode 100755 new mode 100644 diff --git a/doc/SwappableIterator.rst b/doc/SwappableIterator.rst old mode 100755 new mode 100644 diff --git a/doc/WritableIterator.rst b/doc/WritableIterator.rst old mode 100755 new mode 100644 diff --git a/doc/counting_iterator.pdf b/doc/counting_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/docutils.sty b/doc/docutils.sty old mode 100755 new mode 100644 diff --git a/doc/facade-and-adaptor.html b/doc/facade-and-adaptor.html old mode 100755 new mode 100644 diff --git a/doc/facade-and-adaptor.pdf b/doc/facade-and-adaptor.pdf old mode 100755 new mode 100644 diff --git a/doc/facade_iterator_category.rst b/doc/facade_iterator_category.rst old mode 100755 new mode 100644 diff --git a/doc/filter_iterator.pdf b/doc/filter_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/function_output_iterator.pdf b/doc/function_output_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/index.html b/doc/index.html old mode 100755 new mode 100644 diff --git a/doc/index.rst b/doc/index.rst old mode 100755 new mode 100644 diff --git a/doc/indirect_iterator.pdf b/doc/indirect_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/indirect_reference_ref.rst b/doc/indirect_reference_ref.rst old mode 100755 new mode 100644 diff --git a/doc/interoperability-revisited.rst b/doc/interoperability-revisited.rst old mode 100755 new mode 100644 diff --git a/doc/issues.rst b/doc/issues.rst old mode 100755 new mode 100644 diff --git a/doc/iterator_adaptor.pdf b/doc/iterator_adaptor.pdf old mode 100755 new mode 100644 diff --git a/doc/iterator_adaptor_tutorial.rst b/doc/iterator_adaptor_tutorial.rst old mode 100755 new mode 100644 diff --git a/doc/iterator_archetypes.html b/doc/iterator_archetypes.html old mode 100755 new mode 100644 diff --git a/doc/iterator_archetypes.pdf b/doc/iterator_archetypes.pdf old mode 100755 new mode 100644 diff --git a/doc/iterator_archetypes.rst b/doc/iterator_archetypes.rst old mode 100755 new mode 100644 diff --git a/doc/iterator_concepts.pdf b/doc/iterator_concepts.pdf old mode 100755 new mode 100644 diff --git a/doc/iterator_concepts.rst b/doc/iterator_concepts.rst old mode 100755 new mode 100644 diff --git a/doc/iterator_facade.pdf b/doc/iterator_facade.pdf old mode 100755 new mode 100644 diff --git a/doc/iterator_facade_tutorial.rst b/doc/iterator_facade_tutorial.rst old mode 100755 new mode 100644 diff --git a/doc/iterator_traits.html b/doc/iterator_traits.html old mode 100755 new mode 100644 diff --git a/doc/iterator_traits.pdf b/doc/iterator_traits.pdf old mode 100755 new mode 100644 diff --git a/doc/iterator_traits.rst b/doc/iterator_traits.rst old mode 100755 new mode 100644 diff --git a/doc/make_counting_iterator.rst b/doc/make_counting_iterator.rst old mode 100755 new mode 100644 diff --git a/doc/make_filter_iterator.rst b/doc/make_filter_iterator.rst old mode 100755 new mode 100644 diff --git a/doc/make_transform_iterator.rst b/doc/make_transform_iterator.rst old mode 100755 new mode 100644 diff --git a/doc/make_zip_iterator.rst b/doc/make_zip_iterator.rst old mode 100755 new mode 100644 diff --git a/doc/new-iter-concepts.html b/doc/new-iter-concepts.html old mode 100755 new mode 100644 diff --git a/doc/new-iter-concepts.pdf b/doc/new-iter-concepts.pdf old mode 100755 new mode 100644 diff --git a/doc/permutation_iterator.pdf b/doc/permutation_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/pointee.html b/doc/pointee.html old mode 100755 new mode 100644 diff --git a/doc/pointee.pdf b/doc/pointee.pdf old mode 100755 new mode 100644 diff --git a/doc/pointee.rst b/doc/pointee.rst old mode 100755 new mode 100644 diff --git a/doc/pointee_ref.rst b/doc/pointee_ref.rst old mode 100755 new mode 100644 diff --git a/doc/reverse_iterator.pdf b/doc/reverse_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/transform_iterator.pdf b/doc/transform_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/transform_iterator_eg.rst b/doc/transform_iterator_eg.rst old mode 100755 new mode 100644 diff --git a/doc/zip_iterator.html b/doc/zip_iterator.html old mode 100755 new mode 100644 diff --git a/doc/zip_iterator.pdf b/doc/zip_iterator.pdf old mode 100755 new mode 100644 diff --git a/doc/zip_iterator.rst b/doc/zip_iterator.rst old mode 100755 new mode 100644 diff --git a/doc/zip_iterator_abstract.rst b/doc/zip_iterator_abstract.rst old mode 100755 new mode 100644 diff --git a/doc/zip_iterator_eg.rst b/doc/zip_iterator_eg.rst old mode 100755 new mode 100644 diff --git a/doc/zip_iterator_ref.rst b/doc/zip_iterator_ref.rst old mode 100755 new mode 100644 diff --git a/example/node.hpp b/example/node.hpp old mode 100755 new mode 100644 diff --git a/example/node_iterator1.cpp b/example/node_iterator1.cpp old mode 100755 new mode 100644 diff --git a/example/node_iterator1.hpp b/example/node_iterator1.hpp old mode 100755 new mode 100644 diff --git a/example/node_iterator2.cpp b/example/node_iterator2.cpp old mode 100755 new mode 100644 diff --git a/example/node_iterator2.hpp b/example/node_iterator2.hpp old mode 100755 new mode 100644 diff --git a/example/node_iterator3.cpp b/example/node_iterator3.cpp old mode 100755 new mode 100644 diff --git a/example/node_iterator3.hpp b/example/node_iterator3.hpp old mode 100755 new mode 100644 diff --git a/include/boost/iterator/detail/any_conversion_eater.hpp b/include/boost/iterator/detail/any_conversion_eater.hpp old mode 100755 new mode 100644 diff --git a/include/boost/iterator/detail/facade_iterator_category.hpp b/include/boost/iterator/detail/facade_iterator_category.hpp old mode 100755 new mode 100644 diff --git a/include/boost/iterator/detail/minimum_category.hpp b/include/boost/iterator/detail/minimum_category.hpp old mode 100755 new mode 100644 diff --git a/include/boost/iterator/is_lvalue_iterator.hpp b/include/boost/iterator/is_lvalue_iterator.hpp old mode 100755 new mode 100644 diff --git a/include/boost/iterator/is_readable_iterator.hpp b/include/boost/iterator/is_readable_iterator.hpp old mode 100755 new mode 100644 diff --git a/include/boost/pointee.hpp b/include/boost/pointee.hpp old mode 100755 new mode 100644 diff --git a/index.html b/index.html old mode 100755 new mode 100644 diff --git a/test/constant_iter_arrow.cpp b/test/constant_iter_arrow.cpp old mode 100755 new mode 100644 diff --git a/test/constant_iter_arrow_fail.cpp b/test/constant_iter_arrow_fail.cpp old mode 100755 new mode 100644 diff --git a/test/interoperable.cpp b/test/interoperable.cpp old mode 100755 new mode 100644 diff --git a/test/is_lvalue_iterator.cpp b/test/is_lvalue_iterator.cpp old mode 100755 new mode 100644 diff --git a/test/is_readable_iterator.cpp b/test/is_readable_iterator.cpp old mode 100755 new mode 100644 diff --git a/test/iter_archetype_default_ctor.cpp b/test/iter_archetype_default_ctor.cpp old mode 100755 new mode 100644 diff --git a/test/pointee.cpp b/test/pointee.cpp old mode 100755 new mode 100644