---
name: "__gnu_pbds::detail::pat_trie_base__CIter"
section: "3cxx"
platform: "linux"
package: "libstdc++-12-doc"
version: "12.4.0-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/__gnu_pbds::detail::pat_trie_base__CIter/3cxx"
---

# \_\_gnu\_pbds::detail::pat\_trie\_base\_\_CIter(3cxx)

Const iterator.

## NAME

\_\_gnu\_pbds::detail::pat\_trie\_base::\_CIter\< Node, Leaf, Head, Inode, Is\_Forward\_Iterator \> - Const iterator.

## SYNOPSIS

`#include <pat_trie_base.hpp>`

Inherited by **\_\_gnu\_pbds::detail::pat\_trie\_base::\_Iter\< Node, Leaf, Head, Inode, Is\_Forward\_Iterator \>**.

### Public Types

typedef allocator\_type **\_Alloc**\
 typedef Node::allocator\_type **allocator\_type**\
 typedef type\_traits::const\_pointer **const\_pointer**\
 typedef type\_traits::const\_reference **const\_reference**\
 typedef allocator\_type::difference\_type **difference\_type**\
 typedef **rebind\_traits**\< \_Alloc, Head \>::pointer **head\_pointer**\
 typedef Inode::iterator **inode\_iterator**\
 typedef **rebind\_traits**\< \_Alloc, Inode \>::pointer **inode\_pointer**\
 typedef **std::bidirectional\_iterator\_tag** **iterator\_category**\
 typedef **rebind\_traits**\< \_Alloc, Leaf \>::const\_pointer **leaf\_const\_pointer**\
 typedef **rebind\_traits**\< \_Alloc, Leaf \>::pointer **leaf\_pointer**\
 typedef **rebind\_traits**\< \_Alloc, Node \>::pointer **node\_pointer**\
 typedef type\_traits::pointer **pointer**\
 typedef type\_traits::reference **reference**\
 typedef Node::type\_traits **type\_traits**\
 typedef type\_traits::value\_type **value\_type**\

### Public Member Functions

**\_CIter** (const **\_CIter**\< Node, Leaf, Head, Inode, !Is\_Forward\_Iterator \> &other)\
 **\_CIter** (node\_pointer p\_nd=0)\
 bool **operator!=** (const **\_CIter** &other) const\
 bool **operator!=** (const **\_CIter**\< Node, Leaf, Head, Inode, !Is\_Forward\_Iterator \> &other) const\
 const\_reference **operator\*** () const\
 **\_CIter** & **operator++** ()\
 **\_CIter** **operator++** (int)\
 **\_CIter** & **operator--** ()\
 **\_CIter** **operator--** (int)\
 const\_pointer **operator-\>** () const\
 **\_CIter** & **operator=** (const **\_CIter** &other)\
 **\_CIter** & **operator=** (const **\_CIter**\< Node, Leaf, Head, Inode, !Is\_Forward\_Iterator \> &other)\
 bool **operator==** (const **\_CIter** &other) const\
 bool **operator==** (const **\_CIter**\< Node, Leaf, Head, Inode, !Is\_Forward\_Iterator \> &other) const\

### Public Attributes

node\_pointer **m\_p\_nd**\

### Protected Member Functions

void **dec** (false\_type)\
 void **dec** (true\_type)\
 void **inc** (false\_type)\
 void **inc** (true\_type)\

### Static Protected Member Functions

static node\_pointer **get\_larger\_sibling** (node\_pointer p\_nd)\
 static node\_pointer **get\_smaller\_sibling** (node\_pointer p\_nd)\
 static leaf\_pointer **leftmost\_descendant** (node\_pointer p\_nd)\
 static leaf\_pointer **rightmost\_descendant** (node\_pointer p\_nd)\

## Detailed Description

### template\<typename Node, typename Leaf, typename Head, typename Inode, bool Is\_Forward\_Iterator\>

class \_\_gnu\_pbds::detail::pat\_trie\_base::\_CIter\< Node, Leaf, Head, Inode, Is\_Forward\_Iterator \>"Const iterator.

## Author

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