[#absl-chunked_queue] = xref:absl.adoc[absl]::chunked_queue :relfileprefix: ../ :mrdocs: A queue implemented as a linked list of fixed or variable sized blocks. == Synopsis Declared in `<absl/container/chunked_queue.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename T, size_t BLo = 0, size_t BHi = BLo, typename Allocator = std::allocator<T>> class chunked_queue; ---- == Description `absl::chunked_queue` provides the same interface as `std::deque` minus random access. It is useful when memory usage is paramount as it provides finegrained and configurable block sizing. == Type Aliases [cols="1,4"] |=== | Name| Description | xref:absl/chunked_queue/allocator_type.adoc[`allocator_type`] | The allocator type. | xref:absl/chunked_queue/const_iterator.adoc[`const_iterator`] | A const forward iterator over the elements. | xref:absl/chunked_queue/const_reference.adoc[`const_reference`] | A const reference to an element. | xref:absl/chunked_queue/difference_type.adoc[`difference_type`] | A signed integer type used for iterator differences. | xref:absl/chunked_queue/iterator.adoc[`iterator`] | A forward iterator over the elements. | xref:absl/chunked_queue/reference.adoc[`reference`] | A reference to an element. | xref:absl/chunked_queue/size_type.adoc[`size_type`] | An unsigned integer type used for sizes. | xref:absl/chunked_queue/value_type.adoc[`value_type`] | The type of the elements stored in the queue. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:absl/chunked_queue/2constructor-0ad.adoc[`chunked_queue`] [.small]#[constructor]# | Constructors | xref:absl/chunked_queue/2destructor.adoc[`~chunked_queue`] [.small]#[destructor]# | Destroys the queue and frees all allocated storage. | xref:absl/chunked_queue/operator_assign-0b.adoc[`operator=`] | Assignment operators | xref:absl/chunked_queue/assign-06.adoc[`assign`] | `assign` overloads | xref:absl/chunked_queue/back-0b.adoc[`back`] | `back` overloads | xref:absl/chunked_queue/begin-01.adoc[`begin`] | `begin` overloads | xref:absl/chunked_queue/cbegin.adoc[`cbegin`] | Returns a const iterator to the first element. | xref:absl/chunked_queue/cend.adoc[`cend`] | Returns a const iterator past the last element. | xref:absl/chunked_queue/clear.adoc[`clear`] | Erases all elements from the container. | xref:absl/chunked_queue/emplace_back.adoc[`emplace_back`] | Appends a new element to the end of the container. | xref:absl/chunked_queue/empty.adoc[`empty`] | Returns true if the queue contains no elements. | xref:absl/chunked_queue/end-04.adoc[`end`] | `end` overloads | xref:absl/chunked_queue/front-01.adoc[`front`] | `front` overloads | xref:absl/chunked_queue/get_allocator.adoc[`get_allocator`] | Returns the allocator associated with the container. | xref:absl/chunked_queue/max_size.adoc[`max_size`] | Returns the maximum number of elements the queue is able to hold. | xref:absl/chunked_queue/pop_front.adoc[`pop_front`] | Removes the first element of the container. | xref:absl/chunked_queue/push_back-024.adoc[`push_back`] | Appends the given element value to the end of the container. | xref:absl/chunked_queue/resize-0a.adoc[`resize`] | Resizes the container to contain `new_size` elements. | xref:absl/chunked_queue/shrink_to_fit.adoc[`shrink_to_fit`] | Requests the removal of unused capacity. | xref:absl/chunked_queue/size.adoc[`size`] | Returns the number of elements in the queue. | xref:absl/chunked_queue/swap.adoc[`swap`] | Swaps the contents of this queue with `other`. |=== == Static Data Members [cols="1,4"] |=== | Name| Description | xref:absl/chunked_queue/kBlockSizeMax.adoc[`kBlockSizeMax`] | The maximum block size, in elements. | xref:absl/chunked_queue/kBlockSizeMin.adoc[`kBlockSizeMin`] | The minimum block size, in elements. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:absl/swap-027.adoc[`swap`] | Swaps the contents of two `absl::chunked_queue` containers. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#