---
name: "std::__detail::_Insert_base"
section: "3cxx"
platform: "linux"
package: "libstdc++-10-doc"
version: "10.2.1-6"
release: "Debian 11 (Bullseye)"
platforms: ["linux"]
url: "https://new.carta.tech/std::__detail::_Insert_base"
---

# std::\_\_detail::\_Insert\_base(3cxx)

## NAME

std::\_\_detail::\_Insert\_base\< \_Key, \_Value, \_Alloc, \_ExtractKey, \_Equal, \_H1, \_H2, \_Hash, \_RehashPolicy, \_Traits \>

## SYNOPSIS

Inherited by **std::\_\_detail::\_Insert\< \_Key, \_Value, \_Alloc, \_ExtractKey, \_Equal, \_H1, \_H2, \_Hash, \_RehashPolicy, \_Traits, false \>**, and **std::\_\_detail::\_Insert\< \_Key, \_Value, \_Alloc, \_ExtractKey, \_Equal, \_H1, \_H2, \_Hash, \_RehashPolicy, \_Traits, true \>**.

### Public Member Functions

template\<typename \_InputIterator \> void **insert** (\_InputIterator \_\_first, \_InputIterator \_\_last)\
 \_\_ireturn\_type **insert** (const value\_type &\_\_v)\
 iterator **insert** (const\_iterator \_\_hint, const value\_type &\_\_v)\
 void **insert** (**initializer\_list**\< value\_type \> \_\_l)\

### Protected Types

using **\_\_hashtable** = **\_Hashtable**\< \_Key, \_Value, \_Alloc, \_ExtractKey, \_Equal, \_H1, \_H2, \_Hash, \_RehashPolicy, \_Traits \>\
 using **\_\_hashtable\_base** = **\_Hashtable\_base**\< \_Key, \_Value, \_ExtractKey, \_Equal, \_H1, \_H2, \_Hash, \_Traits \>\
 using **\_\_ireturn\_type** = typename \_\_hashtable\_base::\_\_ireturn\_type\
 using **\_\_node\_alloc\_type** = \_\_alloc\_rebind\< \_Alloc, **\_\_node\_type** \>\
 using **\_\_node\_gen\_type** = \_AllocNode\< \_\_node\_alloc\_type \>\
 using **\_\_node\_type** = **\_Hash\_node**\< \_Value, \_Traits::\_\_hash\_cached::value \>\
 using **\_\_unique\_keys** = typename \_\_hashtable\_base::\_\_unique\_keys\
 using **const\_iterator** = typename **\_\_hashtable\_base::const\_iterator**\
 using **iterator** = typename **\_\_hashtable\_base::iterator**\
 using **size\_type** = typename \_\_hashtable\_base::size\_type\
 using **value\_type** = typename \_\_hashtable\_base::value\_type\

### Protected Member Functions

**\_\_hashtable** & **\_M\_conjure\_hashtable** ()\
 template\<typename \_InputIterator , typename \_NodeGetter \> void **\_M\_insert\_range** (\_InputIterator \_\_first, \_InputIterator \_\_last, const \_NodeGetter &, **false\_type**)\
 template\<typename \_InputIterator , typename \_NodeGetter \> void **\_M\_insert\_range** (\_InputIterator \_\_first, \_InputIterator \_\_last, const \_NodeGetter &, **true\_type**)\

## Detailed Description

### template\<typename \_Key, typename \_Value, typename \_Alloc, typename \_ExtractKey, typename \_Equal, typename \_H1, typename \_H2, typename \_Hash, typename \_RehashPolicy, typename \_Traits\>

struct std::\_\_detail::\_Insert\_base\< \_Key, \_Value, \_Alloc, \_ExtractKey, \_Equal, \_H1, \_H2, \_Hash, \_RehashPolicy, \_Traits \>" Primary class template \_Insert\_base.

Defines `insert` member functions appropriate to all \_Hashtables.

Definition at line 798 of file hashtable\_policy.h.

## Author

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