Copy ctor moves.
Construct from InputRange values. If values are sorted assumeSortedParameter is true.
Destruct.
Pack/Compress storage.
Is true if U can be assigned to the element type E of this.
Empty.
Pack/Compress storage.
Insert element(s) values at array offset index.
Push back (append) values.
Inserts several values into this ordered set.
Inserts values.
Wrapper for std.range.SortedRange.lowerBound when this ordering is sorted.
Assignment moves.
Empty.
Compare with range R with comparable element type.
Removal doesn't need to care about ordering.
Pop last count back elements.
Removal doesn't need to care about ordering.
Insert element(s) values at the beginning.
Removal doesn't need to care about ordering.
Reserve room for newCapacity.
Pop back element and return it.
Calculate D associative array (AA) key hash.
Wrapper for std.range.SortedRange.upperBound when this ordering is sorted.
Get back element (as constant reference to preserve ordering).
Get back element reference.
Get reserved capacity of store.
Check if empty.
Get front element (as constant reference to preserve ordering).
Get front element reference.
Set length to newLength.
Get length.
Index operator must be const to preserve ordering.
Index operator.
Index assign operator.
Slice operator must be const when ordered.
Slice operator.
Slice assign operator.
Get internal pointer.
Shrink length to newLength.
Tag this borrowed. Used by wrapper logic in owned.d and borrowed.d
Tag this as not borrowed. Used by wrapper logic in owned.d and borrowed.d
https://en.wikipedia.org/wiki/Sorted_array
TODO: UniqueArray!(const(E)) where E has indirections
TODO: Support for constructing from r-value range (container) of non-copyable elements.
TODO: Add some way to implement lazy sorting either for the whole array (via bool flag) or completeSort at a certain offset (extra member).
TODO: Replace = void with construction or emplace
TODO: Break out common logic into private DynamicArray and reuse with `alias this` to express StandardArray, SortedArray, SortedSetArray
TODO: Use std.array.insertInPlace in insert()? TODO: Use std.array.replaceInPlace?
TODO: Use std.algorithm.mutation.move and std.range.primitives.moveAt when moving internal sub-slices
TODO: Add c.insertAfter(r, x) where c is a collection, r is a range previously extracted from c, and x is a value convertible to collection's element type. See_Also: https://forum.dlang.org/post/n3qq6e$2bis$1@digitalmars.com
TODO: replace qcmeman with std.experimental.allocator parameter defaulting to Mallocator
TODO: use integer_sorting.radixSort when element type isSigned or isUnsigned and above or below a certain threshold calculated by my benchmarks
TODO: Remove explicit moves when DMD std.algorithm.mutation.move calls these members for us (if they exist)
https://forum.dlang.org/post/rcufngzosbbhkvevryyd@forum.dlang.org
Array container(s) with optional sortedness via template-parameter Ordering and optional use of GC via useGCAllocation.