No default construction if an allocator must be provided.
Use the given allocator for allocations.
A destructor is present on this object, but not explicitly documented in the source.
A postblit is present on this object, but not explicitly documented in the source.
Inserts the given range into the end of the list
Time complexity is O(nodeCapacity), where the nodeCapacity is the number of items in a single list node. It is a constant related to the cache line size.
Removes all items from the list
Time complexity is O(1)
Inserts the given item in the frontmost available cell, which may put the item anywhere in the list as removal may leave gaps in list nodes. Use this only if the order of elements is not important.
Inserts the given item into the end of the list.
Inserts the given range into the end of the list
Removes an item from the back of the list and returns it.
Pops the front item off of the list and returns it
Inserts the given range into the end of the list
Pops the back item off of the list.
Pops the front item off of the list
Removes the first instance of the given item from the list.
the element type
the allocator to use. Defaults to Mallocator.
true to ensure that the GC scans the nodes of the unrolled list, false if you are sure that no references to GC-managed memory will be stored in this container.
Nodes will be sized to fit within this number of bytes.
Unrolled Linked List.
Nodes are (by default) sized to fit within a 64-byte cache line. The number of items stored per node can be read from the nodeCapacity field.