Scroll to navigation

__gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >(3cxx) __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >(3cxx)

NAME

__gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc > - Node iterator.

SYNOPSIS

#include <pat_trie_base.hpp>

Inherits __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >.

Public Types


typedef value_type const_reference
typedef trivial_iterator_difference_type difference_type
typedef trivial_iterator_tag iterator_category
typedef rebind_traits< _Alloc, metadata_type >::const_reference metadata_const_reference
Const metadata reference type. typedef Node::metadata_type metadata_type
Metadata type. typedef value_type reference
typedef base_type::size_type size_type
typedef Iterator value_type

Public Member Functions


_Node_iter (node_pointer p_nd=0, a_const_pointer p_traits=0)
_Node_iter get_child (size_type i) const
Returns a node __iterator to the corresponding node's i-th child. metadata_const_reference get_metadata () const
Metadata access. size_type num_children () const
Returns the number of children in the corresponding node. bool operator!= (const _Node_citer &other) const
Compares content (negatively) to a different iterator object. reference operator* () const
Access; returns the iterator* associated with the current leaf. bool operator== (const _Node_citer &other) const
Compares content to a different iterator object. std::pair< a_const_iterator, a_const_iterator > valid_prefix () const
Subtree valid prefix.

Public Attributes


node_pointer m_p_nd
a_const_pointer m_p_traits

Protected Types


typedef Node::a_const_iterator a_const_iterator
typedef rebind_traits< _Alloc, Inode >::const_pointer inode_const_pointer
typedef rebind_traits< _Alloc, Leaf >::const_pointer leaf_const_pointer
typedef rebind_traits< _Alloc, Leaf >::pointer leaf_pointer

Detailed Description

template<typename Node, typename Leaf, typename Head, typename Inode, typename _CIterator, typename Iterator, typename _Alloc>

class __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >"Node iterator.

Member Typedef Documentation

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > typedef rebind_traits<_Alloc,metadata_type>::const_reference __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::metadata_const_reference [inherited]

Const metadata reference type.

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > typedef Node::metadata_type __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::metadata_type [inherited]

Metadata type.

Member Function Documentation

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > _Node_iter __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::get_child (size_type i) const [inline]

Returns a node __iterator to the corresponding node's i-th child.

References std::advance().

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > metadata_const_reference __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::get_metadata () const [inline], [inherited]

Metadata access.

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > size_type __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::num_children () const [inline], [inherited]

Returns the number of children in the corresponding node.

References std::distance().

Referenced by __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator*(), and __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator*().

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > bool __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator!= (const _Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc > & other) const [inline], [inherited]

Compares content (negatively) to a different iterator object.

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > reference __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator* () const [inline]

Access; returns the iterator* associated with the current leaf.

References __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::num_children().

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > bool __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator== (const _Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc > & other) const [inline], [inherited]

Compares content to a different iterator object.

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > std::pair< a_const_iterator, a_const_iterator > __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::valid_prefix () const [inline], [inherited]

Subtree valid prefix.

Author

Generated automatically by Doxygen for libstdc++ from the source code.

libstdc++