libstdc++
__gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc > Class Template Reference
Inheritance diagram for __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >:

List of all members.

Public Types

typedef _Alloc::template
rebind< metadata_type
__rebind_m
typedef __rebind_m::other __rebind_ma
typedef value_type const_reference
typedef
trivial_iterator_difference_type 
difference_type
typedef trivial_iterator_tag iterator_category
typedef
__rebind_ma::const_reference 
metadata_const_reference
typedef Node::metadata_type metadata_type
typedef value_type reference
typedef _Alloc::size_type size_type
typedef _CIterator value_type

Public Member Functions

 _Node_citer (node_pointer p_nd=0, a_const_pointer p_traits=0)
_Node_citer get_child (size_type i) const
metadata_const_reference get_metadata () const
size_type num_children () const
bool operator!= (const _Node_citer &other) const
const_reference operator* () const
bool operator== (const _Node_citer &other) const
std::pair< a_const_iterator,
a_const_iterator > 
valid_prefix () const

Public Attributes

node_pointer m_p_nd
a_const_pointer m_p_traits

Protected Types

typedef _Alloc::template
rebind< Inode > 
__rebind_in
typedef _Alloc::template
rebind< Leaf > 
__rebind_l
typedef _Alloc::template
rebind< Node > 
__rebind_n
typedef Node::a_const_iterator a_const_iterator
typedef Node::a_const_pointer a_const_pointer
typedef
__rebind_in::other::const_pointer 
inode_const_pointer
typedef __rebind_in::other::pointer inode_pointer
typedef
__rebind_l::other::const_pointer 
leaf_const_pointer
typedef __rebind_l::other::pointer leaf_pointer
typedef __rebind_n::other::pointer node_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_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >

Node const iterator.

Definition at line 814 of file pat_trie_base.hpp.


Member Typedef Documentation

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc >
typedef _Alloc::template rebind<metadata_type> __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::__rebind_m

Const metadata reference type.

Definition at line 869 of file pat_trie_base.hpp.

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

Metadata type.

Definition at line 866 of file pat_trie_base.hpp.


Member Function Documentation

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

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

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

Definition at line 911 of file pat_trie_base.hpp.

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

Metadata access.

Definition at line 894 of file pat_trie_base.hpp.

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
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

Compares content (negatively) to a different iterator object.

Definition at line 927 of file pat_trie_base.hpp.

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc >
const_reference __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator* ( ) const
inline
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

Compares content to a different iterator object.

Definition at line 922 of file pat_trie_base.hpp.

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

Subtree valid prefix.

Definition at line 880 of file pat_trie_base.hpp.

References std::make_pair().


The documentation for this class was generated from the following file: