---
name: "__gnu_pbds::basic_branch"
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::basic_branch/3cxx"
---

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

## NAME

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

## SYNOPSIS

`#include <assoc_container.hpp>`

Inherits detail::container\_base\_dispatch::type.

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.
