Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::iterators Namespace Reference

Namespaces

 archetypes
 
 detail
 
 impl
 

Classes

struct  access_archetype
 
struct  bidirectional_traversal_tag
 
class  counting_iterator
 
struct  enable_if_convertible
 
class  filter_iterator
 
struct  forward_traversal_tag
 
class  function_input_iterator
 
class  function_output_iterator
 
class  generator_iterator
 
struct  generator_iterator_generator
 
struct  incrementable_traversal_tag
 
class  indirect_iterator
 
struct  infinite
 
struct  is_interoperable
 
struct  iterator_access_archetype
 
struct  iterator_access_archetype_impl
 
struct  iterator_access_archetype_impl< archetypes::readable_iterator_t >
 
struct  iterator_access_archetype_impl< archetypes::readable_lvalue_iterator_t >
 
struct  iterator_access_archetype_impl< archetypes::readable_writable_iterator_t >
 
struct  iterator_access_archetype_impl< archetypes::writable_iterator_t >
 
struct  iterator_access_archetype_impl< archetypes::writable_lvalue_iterator_t >
 
class  iterator_adaptor
 
struct  iterator_archetype
 
struct  iterator_category
 
struct  iterator_category_to_traversal
 
class  iterator_core_access
 
struct  iterator_difference
 
class  iterator_facade
 
struct  iterator_pointer
 
struct  iterator_reference
 
struct  iterator_traversal
 
struct  iterator_value
 
struct  lvalue_test
 
struct  minimum_category
 
struct  minimum_category< mpl::_1, mpl::_2 >
 
struct  no_traversal_tag
 
class  permutation_iterator
 
struct  pure_iterator_traversal
 
struct  pure_traversal_tag
 
struct  random_access_traversal_tag
 
class  reverse_iterator
 
class  shared_container_iterator
 
struct  single_pass_traversal_tag
 
class  transform_iterator
 
struct  traversal_archetype
 
struct  traversal_archetype_base
 
struct  undefined
 
class  zip_iterator
 

Functions

template<class UnaryFunction >
function_output_iterator
< UnaryFunction > 
make_function_output_iterator (const UnaryFunction &f=UnaryFunction())
 
template<class Generator >
generator_iterator< Generator > make_generator_iterator (Generator &gen)
 
template<class Incrementable >
counting_iterator< Incrementable > make_counting_iterator (Incrementable x)
 
template<class Predicate , class Iterator >
filter_iterator< Predicate,
Iterator > 
make_filter_iterator (Predicate f, Iterator x, Iterator end=Iterator())
 
template<class Predicate , class Iterator >
filter_iterator< Predicate,
Iterator > 
make_filter_iterator (typename iterators::enable_if< is_class< Predicate >, Iterator >::type x, Iterator end=Iterator())
 
template<class Function , class Input >
function_input_iterator
< Function, Input > 
make_function_input_iterator (Function &f, Input state)
 
template<class Function , class Input >
function_input_iterator
< Function *, Input > 
make_function_input_iterator (Function *f, Input state)
 
template<class Iter >
indirect_iterator< Iter > make_indirect_iterator (Iter x)
 
template<class Traits , class Iter >
indirect_iterator< Iter, Traits > make_indirect_iterator (Iter x, Traits *=0)
 
 BOOST_TT_AUX_BOOL_TRAIT_DEF1 (is_lvalue_iterator, T,::boost::iterators::detail::is_readable_lvalue_iterator_impl< T >::value) BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_non_const_lvalue_iterator
 
template<class I , class V , class TC , class R , class D >
boost::iterators::detail::postfix_increment_result
< I, V, R, TC >::type 
operator++ (iterator_facade< I, V, TC, R, D > &i, int)
 
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable
< Derived1, Derived2, typename
mpl::apply2
< boost::iterators::detail::always_bool2,Derived1,
Derived2 >::type >::type 
operator== (iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &lhs, iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &rhs)
 
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable
< Derived1, Derived2, typename
mpl::apply2
< boost::iterators::detail::always_bool2,Derived1,
Derived2 >::type >::type 
operator!= (iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &lhs, iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &rhs)
 
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal
< Derived1, Derived2, typename
mpl::apply2
< boost::iterators::detail::always_bool2,Derived1,
Derived2 >::type >::type 
operator< (iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &lhs, iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &rhs)
 
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal
< Derived1, Derived2, typename
mpl::apply2
< boost::iterators::detail::always_bool2,Derived1,
Derived2 >::type >::type 
operator> (iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &lhs, iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &rhs)
 
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal
< Derived1, Derived2, typename
mpl::apply2
< boost::iterators::detail::always_bool2,Derived1,
Derived2 >::type >::type 
operator<= (iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &lhs, iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &rhs)
 
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal
< Derived1, Derived2, typename
mpl::apply2
< boost::iterators::detail::always_bool2,Derived1,
Derived2 >::type >::type 
operator>= (iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &lhs, iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &rhs)
 
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal
< Derived1, Derived2, typename
mpl::apply2
< boost::iterators::detail::choose_difference_type,Derived1,
Derived2 >::type >::type 
operator- (iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &lhs, iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &rhs)
 
template<class Derived , class V , class TC , class R , class D >
boost::iterators::enable_if
< boost::iterators::detail::is_traversal_at_least
< TC,
boost::iterators::random_access_traversal_tag >
, Derived >::type 
operator+ (iterator_facade< Derived, V, TC, R, D > const &i, typename Derived::difference_type n)
 
template<class Derived , class V , class TC , class R , class D >
boost::iterators::enable_if
< boost::iterators::detail::is_traversal_at_least
< TC,
boost::iterators::random_access_traversal_tag >
, Derived >::type 
operator+ (typename Derived::difference_type n, iterator_facade< Derived, V, TC, R, D > const &i)
 
template<class ElementIterator , class IndexIterator >
permutation_iterator
< ElementIterator,
IndexIterator > 
make_permutation_iterator (ElementIterator e, IndexIterator i)
 
template<class BidirectionalIterator >
reverse_iterator
< BidirectionalIterator > 
make_reverse_iterator (BidirectionalIterator x)
 
template<class UnaryFunc , class Iterator >
transform_iterator< UnaryFunc,
Iterator > 
make_transform_iterator (Iterator it, UnaryFunc fun)
 
template<class UnaryFunc , class Iterator >
iterators::enable_if< is_class
< UnaryFunc >
, transform_iterator
< UnaryFunc, Iterator >
>::type 
make_transform_iterator (Iterator it)
 
template<typename IteratorTuple >
zip_iterator< IteratorTuple > make_zip_iterator (IteratorTuple t)
 
template<class Iterator , class T >
void trivial_iterator_test (const Iterator i, const Iterator j, T val)
 
template<class Iterator , class T >
void mutable_trivial_iterator_test (const Iterator i, const Iterator j, T val)
 
template<class Iterator , class T >
void input_iterator_test (Iterator i, T v1, T v2)
 
template<class Iterator , class T >
void forward_iterator_test (Iterator i, T v1, T v2)
 
template<class Iterator , class T >
void bidirectional_iterator_test (Iterator i, T v1, T v2)
 
template<class Iterator , class TrueVals >
void random_access_iterator_test (Iterator i, int N, TrueVals vals)
 
template<class Iterator , class ConstIterator >
void const_nonconst_iterator_test (Iterator i, ConstIterator j)
 
template<typename Container >
shared_container_iterator
< Container > 
make_shared_container_iterator (typename Container::iterator iter, boost::shared_ptr< Container > const &container)
 
template<typename Container >
std::pair
< shared_container_iterator
< Container >
, shared_container_iterator
< Container > > 
make_shared_container_range (boost::shared_ptr< Container > const &container)
 

Variables

 T
 

Function Documentation

template<class Iterator , class T >
void boost::iterators::bidirectional_iterator_test ( Iterator  i,
T  v1,
T  v2 
)
boost::iterators::BOOST_TT_AUX_BOOL_TRAIT_DEF1 ( is_lvalue_iterator  ,
T  ,
::boost::iterators::detail::is_readable_lvalue_iterator_impl< T >::value   
)
template<class Iterator , class ConstIterator >
void boost::iterators::const_nonconst_iterator_test ( Iterator  i,
ConstIterator  j 
)
template<class Iterator , class T >
void boost::iterators::forward_iterator_test ( Iterator  i,
T  v1,
T  v2 
)
template<class Iterator , class T >
void boost::iterators::input_iterator_test ( Iterator  i,
T  v1,
T  v2 
)
template<class Incrementable >
counting_iterator<Incrementable> boost::iterators::make_counting_iterator ( Incrementable  x)
inline
template<class Predicate , class Iterator >
filter_iterator<Predicate,Iterator> boost::iterators::make_filter_iterator ( Predicate  f,
Iterator  x,
Iterator  end = Iterator() 
)
inline

References boost::end, and boost::flyweights::x.

template<class Predicate , class Iterator >
filter_iterator<Predicate,Iterator> boost::iterators::make_filter_iterator ( typename iterators::enable_if< is_class< Predicate >, Iterator >::type  x,
Iterator  end = Iterator() 
)
inline

References boost::end, and boost::flyweights::x.

template<class Function , class Input >
function_input_iterator<Function, Input> boost::iterators::make_function_input_iterator ( Function &  f,
Input  state 
)
inline
template<class Function , class Input >
function_input_iterator<Function*, Input> boost::iterators::make_function_input_iterator ( Function *  f,
Input  state 
)
inline
template<class UnaryFunction >
function_output_iterator<UnaryFunction> boost::iterators::make_function_output_iterator ( const UnaryFunction &  f = UnaryFunction())
inline
template<class Generator >
generator_iterator<Generator> boost::iterators::make_generator_iterator ( Generator &  gen)
inline
template<class Iter >
indirect_iterator<Iter> boost::iterators::make_indirect_iterator ( Iter  x)
inline

References boost::flyweights::x.

template<class Traits , class Iter >
indirect_iterator<Iter,Traits> boost::iterators::make_indirect_iterator ( Iter  x,
Traits *  = 0 
)
inline

References boost::flyweights::x.

template<class ElementIterator , class IndexIterator >
permutation_iterator<ElementIterator, IndexIterator> boost::iterators::make_permutation_iterator ( ElementIterator  e,
IndexIterator  i 
)
inline
template<typename Container >
shared_container_iterator<Container> boost::iterators::make_shared_container_iterator ( typename Container::iterator  iter,
boost::shared_ptr< Container > const &  container 
)
inline
template<typename Container >
std::pair< shared_container_iterator<Container>, shared_container_iterator<Container> > boost::iterators::make_shared_container_range ( boost::shared_ptr< Container > const &  container)
inline
template<class UnaryFunc , class Iterator >
iterators::enable_if< is_class<UnaryFunc> , transform_iterator<UnaryFunc, Iterator> >::type boost::iterators::make_transform_iterator ( Iterator  it)
inline

References boost::it.

template<class Iterator , class T >
void boost::iterators::mutable_trivial_iterator_test ( const Iterator  i,
const Iterator  j,
T  val 
)
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable< Derived1, Derived2 , typename mpl::apply2< boost::iterators::detail::always_bool2 ,Derived1,Derived2>::type >::type boost::iterators::operator!= ( iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &  lhs,
iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &  rhs 
)
inline
template<class Derived , class V , class TC , class R , class D >
boost::iterators::enable_if< boost::iterators::detail::is_traversal_at_least< TC, boost::iterators::random_access_traversal_tag >, Derived >::type boost::iterators::operator+ ( iterator_facade< Derived, V, TC, R, D > const &  i,
typename Derived::difference_type  n 
)
inline
template<class Derived , class V , class TC , class R , class D >
boost::iterators::enable_if< boost::iterators::detail::is_traversal_at_least< TC, boost::iterators::random_access_traversal_tag >, Derived >::type boost::iterators::operator+ ( typename Derived::difference_type  n,
iterator_facade< Derived, V, TC, R, D > const &  i 
)
inline
template<class I , class V , class TC , class R , class D >
boost::iterators::detail::postfix_increment_result<I,V,R,TC>::type boost::iterators::operator++ ( iterator_facade< I, V, TC, R, D > &  i,
int   
)
inline
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal< Derived1, Derived2 , typename mpl::apply2< boost::iterators::detail::choose_difference_type ,Derived1,Derived2>::type >::type boost::iterators::operator- ( iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &  lhs,
iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &  rhs 
)
inline
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal< Derived1, Derived2 , typename mpl::apply2< boost::iterators::detail::always_bool2 ,Derived1,Derived2>::type >::type boost::iterators::operator< ( iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &  lhs,
iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &  rhs 
)
inline
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal< Derived1, Derived2 , typename mpl::apply2< boost::iterators::detail::always_bool2 ,Derived1,Derived2>::type >::type boost::iterators::operator<= ( iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &  lhs,
iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &  rhs 
)
inline
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable< Derived1, Derived2 , typename mpl::apply2< boost::iterators::detail::always_bool2 ,Derived1,Derived2>::type >::type boost::iterators::operator== ( iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &  lhs,
iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &  rhs 
)
inline
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal< Derived1, Derived2 , typename mpl::apply2< boost::iterators::detail::always_bool2 ,Derived1,Derived2>::type >::type boost::iterators::operator> ( iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &  lhs,
iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &  rhs 
)
inline
template<class Derived1 , class V1 , class TC1 , class Reference1 , class Difference1 , class Derived2 , class V2 , class TC2 , class Reference2 , class Difference2 >
boost::iterators::detail::enable_if_interoperable_and_random_access_traversal< Derived1, Derived2 , typename mpl::apply2< boost::iterators::detail::always_bool2 ,Derived1,Derived2>::type >::type boost::iterators::operator>= ( iterator_facade< Derived1, V1, TC1, Reference1, Difference1 > const &  lhs,
iterator_facade< Derived2, V2, TC2, Reference2, Difference2 > const &  rhs 
)
inline
template<class Iterator , class TrueVals >
void boost::iterators::random_access_iterator_test ( Iterator  i,
int  N,
TrueVals  vals 
)
template<class Iterator , class T >
void boost::iterators::trivial_iterator_test ( const Iterator  i,
const Iterator  j,
T  val 
)

Variable Documentation

boost::iterators::T

Referenced by trivial_iterator_test().