aammm 0.0.8

Associative arrays with new std experimental allocators.


To use this package, put the following dependency into your project's dependencies section:

dub.json
dub.sdl

Build Status

aammm

Associative arrays with manual memory management

All enries and buckets would be dealocated and disposed by internal implementation's destructor. The destructor is called by garbage collector (by default).

Example
    //std.experimental.allocator is included into `aammm`
    import std.experimental.allocator.mallocator;
    import aammm;

    auto a = aa!(string, int)(Mallocator.instance);
    a["foo"] = 0;
    a.remove("foo"); //dealocates and disposes the entry
    assert(a == null); // should not crash
Example with FreeList
    import std.experimental.allocator.mallocator;
    import std.experimental.allocator.building_blocks.free_list;
    alias Alloc = FreeList!(shared Mallocator, long.sizeof);
    Alloc  alloc;
    scope(exit) alloc.minimize;
    auto m = aa!(long, long)(alloc);
    ...
Authors:
Andrei Alexandrescu (allocators), Martin Nowak (associative arrays), Ilya Yaroshenko (bundle, associative arrays)
Dependencies:
none
Versions:
0.0.8 2015-Oct-11
0.0.7 2015-Sep-24
0.0.4 2015-Sep-11
0.0.3 2015-Aug-26
0.0.2 2015-Aug-26
Show all 7 versions
Download Stats:
  • 0 downloads today

  • 0 downloads this week

  • 1 downloads this month

  • 121 downloads total