---
name: "__gnu_pbds::basic_branch"
section: "3"
platform: "linux"
package: "gcc"
version: "16.2.1+r23+gd564253eb6c8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/__gnu_pbds::basic_branch"
---

# \_\_gnu\_pbds::basic\_branch(3)

## NAME

\_\_gnu\_pbds::basic\_branch\< Key, Mapped, Tag, Node\_Update, Policy\_Tl, \_Alloc \>

## SYNOPSIS

\#include \<assoc\_container.hpp\>

Inherits **\_\_gnu\_pbds::detail::type\< Key, Mapped, \_Alloc, Tag, Policy\_Tl \>**.

Inherited by **\_\_gnu\_pbds::tree\< Key, Mapped, Cmp\_Fn, Tag, Node\_Update, \_Alloc \>**, and **\_\_gnu\_pbds::trie\< Key, Mapped, \_ATraits, Tag, Node\_Update, \_Alloc \>**.

### Public Types

typedef Node\_Update **node\_update**\

### Protected Member Functions

**basic\_branch** (const basic\_branch &other)\
 template\<typename T0\> **basic\_branch** (T0 t0)\
 template\<typename T0, typename T1\> **basic\_branch** (T0 t0, T1 t1)\
 template\<typename T0, typename T1, typename T2\> **basic\_branch** (T0 t0, T1 t1, T2 t2)\
 template\<typename T0, typename T1, typename T2, typename T3\> **basic\_branch** (T0 t0, T1 t1, T2 t2, T3 t3)\
 template\<typename T0, typename T1, typename T2, typename T3, typename T4\> **basic\_branch** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4)\
 template\<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5\> **basic\_branch** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5)\
 template\<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6\> **basic\_branch** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6)\

## Detailed Description

### template\<typename Key, typename Mapped, typename Tag, typename Node\_Update, typename Policy\_Tl, typename \_Alloc\>

class \_\_gnu\_pbds::basic\_branch\< Key, Mapped, Tag, Node\_Update, Policy\_Tl, \_Alloc \>"A branched, tree-like (tree, trie) container abstraction.

**Template Parameters**

*Key* Key type. \
 *Mapped* Map type. \
 *Tag* Instantiating data structure type, see container\_tag. \
 *Node\_Update* Updates nodes, restores invariants. \
 *Policy\_TL* Policy typelist. \
 *\_Alloc* Allocator type.

Base is dispatched at compile time via Tag, from the following choices: tree\_tag, trie\_tag, and their descendants.

Base choices are: detail::ov\_tree\_map, detail::rb\_tree\_map, detail::splay\_tree\_map, and detail::pat\_trie\_map.

## Author

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