libbmb
Modern implementation of STL
Loading...
Searching...
No Matches
linked_list.h File Reference
#include <cstddef>
#include <initializer_list>
#include <stdexcept>
#include "algo/algo_base.h"
#include "details/llist_iterator.h"
#include "details/llist_nodes.h"
#include "utils/allocator.h"
#include "utils/compare.h"
#include "utils/iterators.h"
#include "utils/move.h"
#include "utils/type_traits.h"
Include dependency graph for linked_list.h:

Go to the source code of this file.

Classes

class  bmb::LinkedList< T, TrackSize, TrackLast, Allocator >
 Singly linked list. More...
 

Namespaces

namespace  bmb
 

Typedefs

template<typename T , bool TrackLast, typename Allocator = PrimitiveAllocator>
using bmb::LListFastSize = LinkedList< T, true, TrackLast, Allocator >
 LinkedList with enabled track of size.
 
template<typename T , bool TrackSize, typename Allocator = PrimitiveAllocator>
using bmb::LListFastLast = LinkedList< T, TrackSize, true, Allocator >
 LinkedList with enabled track of last element.
 
template<typename T , typename Allocator = PrimitiveAllocator>
using bmb::LListTiny = LinkedList< T, false, false, Allocator >
 LinkedList without size and last element tracking.
 
template<typename T , typename Allocator = PrimitiveAllocator>
using bmb::LListFat = LinkedList< T, true, true, Allocator >
 LinkedList with size and last element tracking.
 

Functions

template<typename T , bool TrackSize = true, bool TrackLast = true, typename Allocator = PrimitiveAllocator>
void bmb::swap (LinkedList< T, TrackSize, TrackLast, Allocator > &a, LinkedList< T, TrackSize, TrackLast, Allocator > &b)
 See LinkedList::swap
 
template<InputIterator Iter, typename Allocator = PrimitiveAllocator>
 bmb::LinkedList (Iter, Iter, Allocator=Allocator()) -> LinkedList< typename IteratorTraits< Iter >::value_type, true, true, PrimitiveAllocator >
 

Detailed Description

Singly linked list implementation

Authors
bivafra