annotate DEPENDENCIES/generic/include/boost/iterator/iterator_traits.hpp @ 133:4acb5d8d80b6 tip

Don't fail environmental check if README.md exists (but .txt and no-suffix don't)
author Chris Cannam
date Tue, 30 Jul 2019 12:25:44 +0100
parents c530137014c0
children
rev   line source
Chris@16 1 // Copyright David Abrahams 2003.
Chris@16 2 // Distributed under the Boost Software License, Version 1.0. (See
Chris@16 3 // accompanying file LICENSE_1_0.txt or copy at
Chris@16 4 // http://www.boost.org/LICENSE_1_0.txt)
Chris@16 5 #ifndef ITERATOR_TRAITS_DWA200347_HPP
Chris@16 6 # define ITERATOR_TRAITS_DWA200347_HPP
Chris@16 7
Chris@16 8 # include <boost/detail/iterator.hpp>
Chris@16 9 # include <boost/detail/workaround.hpp>
Chris@16 10
Chris@101 11 namespace boost {
Chris@101 12 namespace iterators {
Chris@16 13
Chris@101 14 // Macro for supporting old compilers, no longer needed but kept
Chris@101 15 // for backwards compatibility (it was documented).
Chris@101 16 #define BOOST_ITERATOR_CATEGORY iterator_category
Chris@16 17
Chris@16 18
Chris@16 19 template <class Iterator>
Chris@16 20 struct iterator_value
Chris@16 21 {
Chris@16 22 typedef typename boost::detail::iterator_traits<Iterator>::value_type type;
Chris@16 23 };
Chris@101 24
Chris@16 25 template <class Iterator>
Chris@16 26 struct iterator_reference
Chris@16 27 {
Chris@16 28 typedef typename boost::detail::iterator_traits<Iterator>::reference type;
Chris@16 29 };
Chris@101 30
Chris@101 31
Chris@16 32 template <class Iterator>
Chris@16 33 struct iterator_pointer
Chris@16 34 {
Chris@16 35 typedef typename boost::detail::iterator_traits<Iterator>::pointer type;
Chris@16 36 };
Chris@101 37
Chris@16 38 template <class Iterator>
Chris@16 39 struct iterator_difference
Chris@16 40 {
Chris@16 41 typedef typename boost::detail::iterator_traits<Iterator>::difference_type type;
Chris@16 42 };
Chris@16 43
Chris@16 44 template <class Iterator>
Chris@101 45 struct iterator_category
Chris@16 46 {
Chris@16 47 typedef typename boost::detail::iterator_traits<Iterator>::iterator_category type;
Chris@16 48 };
Chris@16 49
Chris@101 50 } // namespace iterators
Chris@16 51
Chris@101 52 using iterators::iterator_value;
Chris@101 53 using iterators::iterator_reference;
Chris@101 54 using iterators::iterator_pointer;
Chris@101 55 using iterators::iterator_difference;
Chris@101 56 using iterators::iterator_category;
Chris@16 57
Chris@101 58 } // namespace boost
Chris@16 59
Chris@16 60 #endif // ITERATOR_TRAITS_DWA200347_HPP