containers
containers copied to clipboard
Containers backed by std.experimental.allocator
``` version(emsi_containers_unittest) unittest { UnrolledList!int list; list.insert(4); list.insert(8); list.insert(12); list.remove(8); list.insert(16); assert(list.back == 12); // This assert succeeds, when it should have failed assert(list.back == 16); // This assert fails,...
https://github.com/dlang-community/containers/blob/31be25ad6692ce7400bb2806bb72c7250bcb8534/src/containers/ttree.d#L202 error: call nogc func https://github.com/dlang-community/containers/blob/31be25ad6692ce7400bb2806bb72c7250bcb8534/src/containers/ttree.d#L610
Hello, I'd like to use containers in `@safe` code, but, for example `cannot call @system function containers.unrolledlist.UnrolledList!(int, Mallocator, false, 64LU).UnrolledList.popFront` Is there something I can do with this or any...
I thought that attribute inference would let HashMap be @nogc when using Mallocator? ``` Error: @nogc function 'dplug.gui.font.Font.getGlyphCoverage' cannot call non-@nogc function 'containers.hashmap.HashMap!(GlyphKey, Image!(Color!(ubyte, "l")), Mallocator, generateHash, true).HashMap.opBinaryRight!"in".opBinaryRight' ```
Since the TreeMap structure guarantees an ordering for its contents, it would be very useful to have `front` `popFront`, `back`, and `popBack` methods to get the largest or smallest items...
currently, hashset can only insert one element at a time: https://github.com/dlang-community/containers/blob/fc1625a5a0c253272b80addfb4107928495fd647/src/containers/hashset.d#L150 ``` HashSet!string set; set.insert("foo"); set.insert("bar"); ``` Can we add another method, so we can insert multiple elements all at...
I currently have my own implementations of gc free containers, but it would be nice to switch to a more "widely" used library. But I would need the containers to...
Some containers have `insert` methods that return `void`, others `size_t`, or `T*` and so on. Figure out if it makes sense to make these standardized.
10 is no longer supported by github runners
impossible to represent with D's type system, so we mark these things as trusted, so that dependees can use them safely after having this library manually checked by us authors.