Commit dcfc851349

Ryan Liptak <squeek502@hotmail.com>
2025-09-30 09:42:31
ArrayHashMapWithAllocator: add `sortUnstable` fn alongside `sort`
1 parent cbe3dd1
Changed files (1)
lib/std/array_hash_map.zig
@@ -460,10 +460,19 @@ pub fn ArrayHashMapWithAllocator(
         /// Sorts the entries and then rebuilds the index.
         /// `sort_ctx` must have this method:
         /// `fn lessThan(ctx: @TypeOf(ctx), a_index: usize, b_index: usize) bool`
+        /// Uses a stable sorting algorithm.
         pub fn sort(self: *Self, sort_ctx: anytype) void {
             return self.unmanaged.sortContext(sort_ctx, self.ctx);
         }
 
+        /// Sorts the entries and then rebuilds the index.
+        /// `sort_ctx` must have this method:
+        /// `fn lessThan(ctx: @TypeOf(ctx), a_index: usize, b_index: usize) bool`
+        /// Uses an unstable sorting algorithm.
+        pub fn sortUnstable(self: *Self, sort_ctx: anytype) void {
+            return self.unmanaged.sortUnstableContext(sort_ctx, self.ctx);
+        }
+
         /// Shrinks the underlying `Entry` array to `new_len` elements and
         /// discards any associated index entries. Keeps capacity the same.
         ///