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

# std::\_List\_base(3cxx)

See bits/stl\_deque.h's \_Deque\_base for an explanation.

## NAME

std::\_List\_base\< \_Tp, \_Alloc \> - See bits/stl\_deque.h's \_Deque\_base for an explanation.

## SYNOPSIS

`#include <list>`

Inherited by **std::list\< \_\_inp, \_\_rebind\_inp \>**` [protected]`, and **std::list\< \_Tp, \_Alloc \>**` [protected]`.

### Public Types

**typedef** \_Alloc **allocator\_type**\

### Public Member Functions

**\_List\_base** (**\_List\_base** &&)=**default**\
 **\_List\_base** (**\_List\_base** &&\_\_x, \_Node\_alloc\_type &&\_\_a)\
 **\_List\_base** (\_Node\_alloc\_type &&\_\_a)\
 **\_List\_base** (\_Node\_alloc\_type &&\_\_a, **\_List\_base** &&\_\_x)\
 **\_List\_base** (const \_Node\_alloc\_type &\_\_a) noexcept\
 **void** **\_M\_clear** () noexcept\
 const \_Node\_alloc\_type & **\_M\_get\_Node\_allocator** () const noexcept\
 \_Node\_alloc\_type & **\_M\_get\_Node\_allocator** () noexcept\
 **void** **\_M\_init** () noexcept\
 **void** **\_M\_move\_nodes** (**\_List\_base** &&\_\_x)\

### Protected Types

**typedef** **\_\_gnu\_cxx::\_\_alloc\_traits**\< \_Node\_alloc\_type \> **\_Node\_alloc\_traits**\
 **typedef** \_Tp\_alloc\_traits::template rebind\< **\_List\_node**\< \_Tp \> \>::other **\_Node\_alloc\_type**\
 **typedef** **\_\_gnu\_cxx::\_\_alloc\_traits**\< \_Tp\_alloc\_type \> **\_Tp\_alloc\_traits**\
 **typedef** **\_\_gnu\_cxx::\_\_alloc\_traits**\< \_Alloc \>::template rebind\< \_Tp \>::other **\_Tp\_alloc\_type**\

### Protected Member Functions

**void** **\_M\_dec\_size** (size\_t)\
 size\_t **\_M\_distance** (const **void** \*, const **void** \*) const\
 \_Node\_alloc\_traits::pointer **\_M\_get\_node** ()\
 size\_t **\_M\_get\_size** () const\
 **void** **\_M\_inc\_size** (size\_t)\
 size\_t **\_M\_node\_count** () const\
 **void** **\_M\_put\_node** (**typename** \_Node\_alloc\_traits::pointer \_\_p) noexcept\
 **void** **\_M\_set\_size** (size\_t)\

### Static Protected Member Functions

**static** size\_t **\_S\_distance** (const **\_\_detail::\_List\_node\_base** \*\_\_first, const **\_\_detail::\_List\_node\_base** \*\_\_last)\

### Protected Attributes

\_List\_impl **\_M\_impl**\

## Detailed Description

### template\<typename \_Tp, typename \_Alloc\>

class std::\_List\_base\< \_Tp, \_Alloc \>"See bits/stl\_deque.h's \_Deque\_base for an explanation.

## Author

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