mirror of
https://github.com/boostorg/iterator.git
synced 2025-07-27 03:17:54 +02:00
Compare commits
7 Commits
boost-1.40
...
boost-1.46
Author | SHA1 | Date | |
---|---|---|---|
3f67f56b0c | |||
d45b57c33c | |||
5a88e6f958 | |||
36565eae63 | |||
de4ef14f9b | |||
f65f03afcc | |||
cfc04ce11e |
@ -1,30 +0,0 @@
|
||||
#
|
||||
# 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
|
||||
)
|
||||
|
||||
|
0
doc/BidirectionalTraversal.rst
Executable file → Normal file
0
doc/BidirectionalTraversal.rst
Executable file → Normal file
0
doc/ForwardTraversal.rst
Executable file → Normal file
0
doc/ForwardTraversal.rst
Executable file → Normal file
0
doc/GNUmakefile
Executable file → Normal file
0
doc/GNUmakefile
Executable file → Normal file
0
doc/IncrementableIterator.rst
Executable file → Normal file
0
doc/IncrementableIterator.rst
Executable file → Normal file
@ -13,6 +13,7 @@ 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
|
||||
|
0
doc/LvalueIterator.rst
Executable file → Normal file
0
doc/LvalueIterator.rst
Executable file → Normal file
0
doc/ReadableIterator.rst
Executable file → Normal file
0
doc/ReadableIterator.rst
Executable file → Normal file
0
doc/SinglePassIterator.rst
Executable file → Normal file
0
doc/SinglePassIterator.rst
Executable file → Normal file
0
doc/SwappableIterator.rst
Executable file → Normal file
0
doc/SwappableIterator.rst
Executable file → Normal file
0
doc/WritableIterator.rst
Executable file → Normal file
0
doc/WritableIterator.rst
Executable file → Normal file
0
doc/counting_iterator.pdf
Executable file → Normal file
0
doc/counting_iterator.pdf
Executable file → Normal file
0
doc/docutils.sty
Executable file → Normal file
0
doc/docutils.sty
Executable file → Normal file
0
doc/facade-and-adaptor.html
Executable file → Normal file
0
doc/facade-and-adaptor.html
Executable file → Normal file
0
doc/facade-and-adaptor.pdf
Executable file → Normal file
0
doc/facade-and-adaptor.pdf
Executable file → Normal file
0
doc/facade_iterator_category.rst
Executable file → Normal file
0
doc/facade_iterator_category.rst
Executable file → Normal file
0
doc/filter_iterator.pdf
Executable file → Normal file
0
doc/filter_iterator.pdf
Executable file → Normal file
0
doc/function_output_iterator.pdf
Executable file → Normal file
0
doc/function_output_iterator.pdf
Executable file → Normal file
0
doc/index.html
Executable file → Normal file
0
doc/index.html
Executable file → Normal file
0
doc/index.rst
Executable file → Normal file
0
doc/index.rst
Executable file → Normal file
0
doc/indirect_iterator.pdf
Executable file → Normal file
0
doc/indirect_iterator.pdf
Executable file → Normal file
0
doc/indirect_reference_ref.rst
Executable file → Normal file
0
doc/indirect_reference_ref.rst
Executable file → Normal file
0
doc/interoperability-revisited.rst
Executable file → Normal file
0
doc/interoperability-revisited.rst
Executable file → Normal file
0
doc/issues.rst
Executable file → Normal file
0
doc/issues.rst
Executable file → Normal file
0
doc/iterator_adaptor.pdf
Executable file → Normal file
0
doc/iterator_adaptor.pdf
Executable file → Normal file
0
doc/iterator_adaptor_tutorial.rst
Executable file → Normal file
0
doc/iterator_adaptor_tutorial.rst
Executable file → Normal file
0
doc/iterator_archetypes.html
Executable file → Normal file
0
doc/iterator_archetypes.html
Executable file → Normal file
0
doc/iterator_archetypes.pdf
Executable file → Normal file
0
doc/iterator_archetypes.pdf
Executable file → Normal file
0
doc/iterator_archetypes.rst
Executable file → Normal file
0
doc/iterator_archetypes.rst
Executable file → Normal file
0
doc/iterator_concepts.pdf
Executable file → Normal file
0
doc/iterator_concepts.pdf
Executable file → Normal file
0
doc/iterator_concepts.rst
Executable file → Normal file
0
doc/iterator_concepts.rst
Executable file → Normal file
0
doc/iterator_facade.pdf
Executable file → Normal file
0
doc/iterator_facade.pdf
Executable file → Normal file
0
doc/iterator_facade_tutorial.rst
Executable file → Normal file
0
doc/iterator_facade_tutorial.rst
Executable file → Normal file
0
doc/iterator_traits.html
Executable file → Normal file
0
doc/iterator_traits.html
Executable file → Normal file
0
doc/iterator_traits.pdf
Executable file → Normal file
0
doc/iterator_traits.pdf
Executable file → Normal file
0
doc/iterator_traits.rst
Executable file → Normal file
0
doc/iterator_traits.rst
Executable file → Normal file
0
doc/make_counting_iterator.rst
Executable file → Normal file
0
doc/make_counting_iterator.rst
Executable file → Normal file
0
doc/make_filter_iterator.rst
Executable file → Normal file
0
doc/make_filter_iterator.rst
Executable file → Normal file
0
doc/make_transform_iterator.rst
Executable file → Normal file
0
doc/make_transform_iterator.rst
Executable file → Normal file
0
doc/make_zip_iterator.rst
Executable file → Normal file
0
doc/make_zip_iterator.rst
Executable file → Normal file
0
doc/new-iter-concepts.html
Executable file → Normal file
0
doc/new-iter-concepts.html
Executable file → Normal file
0
doc/new-iter-concepts.pdf
Executable file → Normal file
0
doc/new-iter-concepts.pdf
Executable file → Normal file
0
doc/permutation_iterator.pdf
Executable file → Normal file
0
doc/permutation_iterator.pdf
Executable file → Normal file
0
doc/pointee.html
Executable file → Normal file
0
doc/pointee.html
Executable file → Normal file
0
doc/pointee.pdf
Executable file → Normal file
0
doc/pointee.pdf
Executable file → Normal file
0
doc/pointee.rst
Executable file → Normal file
0
doc/pointee.rst
Executable file → Normal file
0
doc/pointee_ref.rst
Executable file → Normal file
0
doc/pointee_ref.rst
Executable file → Normal file
0
doc/reverse_iterator.pdf
Executable file → Normal file
0
doc/reverse_iterator.pdf
Executable file → Normal file
0
doc/transform_iterator.pdf
Executable file → Normal file
0
doc/transform_iterator.pdf
Executable file → Normal file
0
doc/transform_iterator_eg.rst
Executable file → Normal file
0
doc/transform_iterator_eg.rst
Executable file → Normal file
0
doc/zip_iterator.html
Executable file → Normal file
0
doc/zip_iterator.html
Executable file → Normal file
0
doc/zip_iterator.pdf
Executable file → Normal file
0
doc/zip_iterator.pdf
Executable file → Normal file
0
doc/zip_iterator.rst
Executable file → Normal file
0
doc/zip_iterator.rst
Executable file → Normal file
0
doc/zip_iterator_abstract.rst
Executable file → Normal file
0
doc/zip_iterator_abstract.rst
Executable file → Normal file
0
doc/zip_iterator_eg.rst
Executable file → Normal file
0
doc/zip_iterator_eg.rst
Executable file → Normal file
0
doc/zip_iterator_ref.rst
Executable file → Normal file
0
doc/zip_iterator_ref.rst
Executable file → Normal file
0
example/node.hpp
Executable file → Normal file
0
example/node.hpp
Executable file → Normal file
0
example/node_iterator1.cpp
Executable file → Normal file
0
example/node_iterator1.cpp
Executable file → Normal file
0
example/node_iterator1.hpp
Executable file → Normal file
0
example/node_iterator1.hpp
Executable file → Normal file
0
example/node_iterator2.cpp
Executable file → Normal file
0
example/node_iterator2.cpp
Executable file → Normal file
0
example/node_iterator2.hpp
Executable file → Normal file
0
example/node_iterator2.hpp
Executable file → Normal file
0
example/node_iterator3.cpp
Executable file → Normal file
0
example/node_iterator3.cpp
Executable file → Normal file
0
example/node_iterator3.hpp
Executable file → Normal file
0
example/node_iterator3.hpp
Executable file → Normal file
0
include/boost/iterator/detail/any_conversion_eater.hpp
Executable file → Normal file
0
include/boost/iterator/detail/any_conversion_eater.hpp
Executable file → Normal file
0
include/boost/iterator/detail/facade_iterator_category.hpp
Executable file → Normal file
0
include/boost/iterator/detail/facade_iterator_category.hpp
Executable file → Normal file
0
include/boost/iterator/detail/minimum_category.hpp
Executable file → Normal file
0
include/boost/iterator/detail/minimum_category.hpp
Executable file → Normal file
0
include/boost/iterator/is_lvalue_iterator.hpp
Executable file → Normal file
0
include/boost/iterator/is_lvalue_iterator.hpp
Executable file → Normal file
0
include/boost/iterator/is_readable_iterator.hpp
Executable file → Normal file
0
include/boost/iterator/is_readable_iterator.hpp
Executable file → Normal file
@ -105,6 +105,7 @@ 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>
|
||||
@ -323,7 +324,7 @@ namespace boost
|
||||
|
||||
static type make(Reference x)
|
||||
{
|
||||
return implicit_cast<type>(&x);
|
||||
return boost::implicit_cast<type>(&x);
|
||||
}
|
||||
};
|
||||
|
||||
@ -617,6 +618,12 @@ 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_;
|
||||
@ -626,7 +633,9 @@ namespace boost
|
||||
typedef typename associated_types::value_type value_type;
|
||||
typedef Reference reference;
|
||||
typedef Difference difference_type;
|
||||
typedef typename associated_types::pointer pointer;
|
||||
|
||||
typedef typename pointer_::type pointer;
|
||||
|
||||
typedef typename associated_types::iterator_category iterator_category;
|
||||
|
||||
reference operator*() const
|
||||
@ -634,18 +643,9 @@ namespace boost
|
||||
return iterator_core_access::dereference(this->derived());
|
||||
}
|
||||
|
||||
typename boost::detail::operator_arrow_result<
|
||||
value_type
|
||||
, reference
|
||||
, pointer
|
||||
>::type
|
||||
operator->() const
|
||||
pointer operator->() const
|
||||
{
|
||||
return boost::detail::operator_arrow_result<
|
||||
value_type
|
||||
, reference
|
||||
, pointer
|
||||
>::make(*this->derived());
|
||||
return pointer_::make(*this->derived());
|
||||
}
|
||||
|
||||
typename boost::detail::operator_brackets_result<Derived,Value,reference>::type
|
||||
|
@ -7,7 +7,6 @@
|
||||
#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>
|
||||
|
0
include/boost/iterator/zip_iterator.hpp
Executable file → Normal file
0
include/boost/iterator/zip_iterator.hpp
Executable file → Normal file
0
include/boost/pointee.hpp
Executable file → Normal file
0
include/boost/pointee.hpp
Executable file → Normal file
0
index.html
Executable file → Normal file
0
index.html
Executable file → Normal file
@ -1 +0,0 @@
|
||||
boost_module(iterator DEPENDS mpl type_traits function concept_check)
|
@ -1,39 +0,0 @@
|
||||
#
|
||||
# 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)
|
0
test/constant_iter_arrow.cpp
Executable file → Normal file
0
test/constant_iter_arrow.cpp
Executable file → Normal file
0
test/constant_iter_arrow_fail.cpp
Executable file → Normal file
0
test/constant_iter_arrow_fail.cpp
Executable file → Normal file
0
test/interoperable.cpp
Executable file → Normal file
0
test/interoperable.cpp
Executable file → Normal file
0
test/is_lvalue_iterator.cpp
Executable file → Normal file
0
test/is_lvalue_iterator.cpp
Executable file → Normal file
0
test/is_readable_iterator.cpp
Executable file → Normal file
0
test/is_readable_iterator.cpp
Executable file → Normal file
0
test/iter_archetype_default_ctor.cpp
Executable file → Normal file
0
test/iter_archetype_default_ctor.cpp
Executable file → Normal file
0
test/iterator_facade.cpp
Executable file → Normal file
0
test/iterator_facade.cpp
Executable file → Normal file
0
test/pointee.cpp
Executable file → Normal file
0
test/pointee.cpp
Executable file → Normal file
0
test/zip_iterator_test.cpp
Executable file → Normal file
0
test/zip_iterator_test.cpp
Executable file → Normal file
Reference in New Issue
Block a user