EMSI Containers and HashMap of HashMaps
Imperatorn
johan_forsberg_86 at hotmail.com
Sun May 2 08:59:15 UTC 2021
On Sunday, 2 May 2021 at 07:38:03 UTC, Tobias Pankrath wrote:
> The following code segfaults, when the outer hashmap rehashes,
> and I am not yet sure why.
>
> ```d
> module tests.refcounted_hashmap_test;
>
> import containers;
> import std.typecons;
>
> struct Map
> {
> HashMap!(int, int) theMap;
> }
>
> unittest
> {
> HashMap!(int, RefCounted!Map) mapOfMaps;
> foreach (i; 0 .. 1000)
> {
> RefCounted!Map val;
> if (i == 0) val.theMap.getOrAdd(i, i);
> mapOfMaps.getOrAdd(i, val);
> }
> }
> ```
>
> For your convenience: https://run.dlang.io/is/gHSlu1
>
> I am using Refcounted() because HashMap itself is not
> copy-able. Is there another way to have HashMaps as values of
> HashMaps?
```d
HashMap!(int, RefCounted!Map) mapOfMaps = HashMap!(int,
RefCounted!Map)(1024);
```
More information about the Digitalmars-d-learn
mailing list