Update of /cvsroot/boost/boost/boost/iterator
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv13267/boost/iterator
Modified Files:
iterator_concepts.hpp
Log Message:
Pull all non-runtime stuff out of the USAGE clause
Index: iterator_concepts.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/iterator/iterator_concepts.hpp,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- iterator_concepts.hpp 19 Sep 2006 13:41:30 -0000 1.22
+++ iterator_concepts.hpp 24 Feb 2007 22:01:22 -0000 1.23
@@ -113,14 +113,14 @@
{
typedef typename boost::iterator_traversal<Iterator>::type
traversal_category;
+ BOOST_CONCEPT_ASSERT((
+ boost::Convertible<
+ traversal_category
+ , boost::incrementable_traversal_tag
+ >));
+
BOOST_CONCEPT_USAGE(IncrementableIterator)
{
- BOOST_CONCEPT_ASSERT((
- boost::Convertible<
- traversal_category
- , boost::incrementable_traversal_tag
- >));
-
++i;
(void)i++;
}
@@ -133,14 +133,11 @@
, boost::EqualityComparable<Iterator>
{
- BOOST_CONCEPT_USAGE(SinglePassIterator)
- {
- BOOST_CONCEPT_ASSERT((
- boost::Convertible<
- BOOST_DEDUCED_TYPENAME SinglePassIterator::traversal_category
- , boost::single_pass_traversal_tag
- > ));
- }
+ BOOST_CONCEPT_ASSERT((
+ boost::Convertible<
+ BOOST_DEDUCED_TYPENAME SinglePassIterator::traversal_category
+ , boost::single_pass_traversal_tag
+ > ));
};
BOOST_concept(ForwardTraversal,(Iterator))
@@ -149,30 +146,27 @@
{
typedef typename
boost::detail::iterator_traits<Iterator>::difference_type difference_type;
- BOOST_CONCEPT_USAGE(ForwardTraversal)
- {
- BOOST_MPL_ASSERT((boost::is_integral<difference_type>));
-
BOOST_MPL_ASSERT_RELATION(std::numeric_limits<difference_type>::is_signed, ==,
true);
-
- BOOST_CONCEPT_ASSERT((
- boost::Convertible<
- BOOST_DEDUCED_TYPENAME ForwardTraversal::traversal_category
- , boost::forward_traversal_tag
- > ));
- }
+ BOOST_MPL_ASSERT((boost::is_integral<difference_type>));
+
BOOST_MPL_ASSERT_RELATION(std::numeric_limits<difference_type>::is_signed, ==,
true);
+
+ BOOST_CONCEPT_ASSERT((
+ boost::Convertible<
+ BOOST_DEDUCED_TYPENAME ForwardTraversal::traversal_category
+ , boost::forward_traversal_tag
+ > ));
};
BOOST_concept(BidirectionalTraversal,(Iterator))
: ForwardTraversal<Iterator>
{
+ BOOST_CONCEPT_ASSERT((
+ boost::Convertible<
+ BOOST_DEDUCED_TYPENAME BidirectionalTraversal::traversal_category
+ , boost::bidirectional_traversal_tag
+ > ));
+
BOOST_CONCEPT_USAGE(BidirectionalTraversal)
{
- BOOST_CONCEPT_ASSERT((
- boost::Convertible<
- BOOST_DEDUCED_TYPENAME
BidirectionalTraversal::traversal_category
- , boost::bidirectional_traversal_tag
- > ));
-
--i;
(void)i--;
}
@@ -183,15 +177,14 @@
BOOST_concept(RandomAccessTraversal,(Iterator))
: BidirectionalTraversal<Iterator>
{
- public:
+ BOOST_CONCEPT_ASSERT((
+ boost::Convertible<
+ BOOST_DEDUCED_TYPENAME RandomAccessTraversal::traversal_category
+ , boost::random_access_traversal_tag
+ > ));
+
BOOST_CONCEPT_USAGE(RandomAccessTraversal)
{
- BOOST_CONCEPT_ASSERT((
- boost::Convertible<
- BOOST_DEDUCED_TYPENAME
RandomAccessTraversal::traversal_category
- , boost::random_access_traversal_tag
- > ));
-
i += n;
i = i + n;
i = n + i;
@@ -268,11 +261,11 @@
>::type const_traversal_category;
public:
+ BOOST_CONCEPT_ASSERT((SinglePassIterator<Iterator>));
+ BOOST_CONCEPT_ASSERT((SinglePassIterator<ConstIterator>));
+
BOOST_CONCEPT_USAGE(InteroperableIterator)
{
- BOOST_CONCEPT_ASSERT((SinglePassIterator<Iterator>));
- BOOST_CONCEPT_ASSERT((SinglePassIterator<ConstIterator>));
-
detail::interop_single_pass_constraints(i, ci);
detail::interop_rand_access_constraints(i, ci, traversal_category(),
const_traversal_category());
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs