Compare commits

..

1 Commits

Author SHA1 Message Date
2dbdb38670 Release 1.40.0
[SVN r55802]
2009-08-27 16:24:59 +00:00
6 changed files with 84 additions and 14 deletions

30
CMakeLists.txt Normal file
View File

@ -0,0 +1,30 @@
#
# Copyright Troy D. Straszheim
#
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt
#
#----------------------------------------------------------------------------
# This file was automatically generated from the original CMakeLists.txt file
# Add a variable to hold the headers for the library
set (lib_headers
iterator.hpp
iterator
)
# Add a library target to the build system
boost_library_project(
iterator
# SRCDIRS
TESTDIRS test
HEADERS ${lib_headers}
# DOCDIRS
DESCRIPTION "A system of concepts which extend the C++ standard iterator requirementsand a framework of components for building iterators based on these extended concepts and includes several useful iterator adaptors."
MODULARIZED
AUTHORS "David Abrahams <dave -at- boostpro.com>"
"Jeremy Siek <jeremy.siek -at- gmail.com>"
"Thomas Witt <witt - at - acm.org>"
# MAINTAINERS
)

View File

@ -13,7 +13,6 @@ boostbook standalone
:
iterator
:
<xsl:param>boost.root=../../../..
<xsl:param>toc.max.depth=3
<xsl:param>toc.section.depth=3
<xsl:param>chunk.section.depth=4

View File

@ -105,7 +105,6 @@ namespace boost
typedef typename remove_const<ValueParam>::type value_type;
// Not the real associated pointer type
typedef typename mpl::eval_if<
boost::detail::iterator_writability_disabled<ValueParam,Reference>
, add_pointer<const value_type>
@ -324,7 +323,7 @@ namespace boost
static type make(Reference x)
{
return boost::implicit_cast<type>(&x);
return implicit_cast<type>(&x);
}
};
@ -618,12 +617,6 @@ namespace boost
Value, CategoryOrTraversal, Reference, Difference
> associated_types;
typedef boost::detail::operator_arrow_result<
typename associated_types::value_type
, Reference
, typename associated_types::pointer
> pointer_;
protected:
// For use by derived classes
typedef iterator_facade<Derived,Value,CategoryOrTraversal,Reference,Difference> iterator_facade_;
@ -633,9 +626,7 @@ namespace boost
typedef typename associated_types::value_type value_type;
typedef Reference reference;
typedef Difference difference_type;
typedef typename pointer_::type pointer;
typedef typename associated_types::pointer pointer;
typedef typename associated_types::iterator_category iterator_category;
reference operator*() const
@ -643,9 +634,18 @@ namespace boost
return iterator_core_access::dereference(this->derived());
}
pointer operator->() const
typename boost::detail::operator_arrow_result<
value_type
, reference
, pointer
>::type
operator->() const
{
return pointer_::make(*this->derived());
return boost::detail::operator_arrow_result<
value_type
, reference
, pointer
>::make(*this->derived());
}
typename boost::detail::operator_brackets_result<Derived,Value,reference>::type

View File

@ -7,6 +7,7 @@
#ifndef BOOST_TRANSFORM_ITERATOR_23022003THW_HPP
#define BOOST_TRANSFORM_ITERATOR_23022003THW_HPP
#include <boost/function.hpp>
#include <boost/iterator.hpp>
#include <boost/iterator/detail/enable_if.hpp>
#include <boost/iterator/iterator_adaptor.hpp>

1
module.cmake Normal file
View File

@ -0,0 +1 @@
boost_module(iterator DEPENDS mpl type_traits function concept_check)

39
test/CMakeLists.txt Normal file
View File

@ -0,0 +1,39 @@
#
# Copyright Troy D. Straszheim
#
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt
#
boost_additional_test_dependencies(iterator BOOST_DEPENDS test tuple smart_ptr)
# These first two tests will run last, and are expected to fail
# for many less-capable compilers.
boost_test_compile_fail(interoperable_fail)
# test uses expected success, so that we catch unrelated
# compilation problems.
boost_test_run(is_convertible_fail)
boost_test_run(zip_iterator_test)
# These tests should work for just about everything.
boost_test_compile(is_lvalue_iterator)
boost_test_compile(is_readable_iterator)
boost_test_compile(pointee)
boost_test_run(unit_tests)
boost_test_run(concept_tests)
boost_test_run(iterator_adaptor_cc)
boost_test_run(iterator_adaptor_test)
boost_test_compile(iterator_archetype_cc)
boost_test_compile_fail(iter_archetype_default_ctor)
boost_test_compile_fail(lvalue_concept_fail)
boost_test_run(transform_iterator_test)
boost_test_run(indirect_iterator_test)
boost_test_compile(indirect_iter_member_types)
boost_test_run(filter_iterator_test)
boost_test_run(iterator_facade)
boost_test_run(reverse_iterator_test)
boost_test_run(counting_iterator_test)
boost_test_run(interoperable)
boost_test_run(iterator_traits_test)
boost_test_run(permutation_iterator_test)