diff --git a/include/boost/concept_archetype.hpp b/include/boost/concept_archetype.hpp index 7acd80c..5eb39dc 100644 --- a/include/boost/concept_archetype.hpp +++ b/include/boost/concept_archetype.hpp @@ -403,78 +403,6 @@ namespace boost { //=========================================================================== // Iterator Archetype Classes - template - struct input_proxy { - operator const T&() { return static_object::get(); } - }; - template - class trivial_iterator_archetype - { - typedef trivial_iterator_archetype self; - public: -#ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION - typedef T value_type; - typedef void reference; - typedef void pointer; - typedef void difference_type; - typedef void iterator_category; -#endif - trivial_iterator_archetype() { } - self& operator=(const self&) { return *this; } - bool operator==(const self&) const { return true; } - bool operator!=(const self&) const { return true; } - input_proxy operator*() const { return input_proxy(); } - }; -} // namespace boost - -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) && !defined(BOOST_NO_STD_ITERATOR_TRAITS) -namespace std { - template - struct iterator_traits< boost::trivial_iterator_archetype > - { - typedef T value_type; - }; -} -#endif - -namespace boost { - template - struct input_output_proxy { - input_output_proxy& operator=(const T&) { return *this; } - operator const T&() { return static_object::get(); } - }; - template - class mutable_trivial_iterator_archetype - { - typedef mutable_trivial_iterator_archetype self; - public: -#ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION - typedef T value_type; - typedef void reference; - typedef void pointer; - typedef void difference_type; - typedef void iterator_category; -#endif - mutable_trivial_iterator_archetype() { } - self& operator=(const self&) { return *this; } - bool operator==(const self&) const { return true; } - bool operator!=(const self&) const { return true; } - input_output_proxy operator*() const { return input_output_proxy(); } - }; -} // namespace boost - -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) && !defined(BOOST_NO_STD_ITERATOR_TRAITS) -namespace std { - template - struct iterator_traits< boost::mutable_trivial_iterator_archetype > - { - typedef T value_type; - }; -} -#endif - -namespace boost { - template class input_iterator_archetype {