view run/mini/aa6.d @ 1630:d0efa3ae5522 default tip

run/mini/naked_asm5: New x86_64 ABI passes the arguments in reverse order.
author David Nadlinger <code@klickverbot.at>
date Sat, 23 Apr 2011 22:57:32 +0200
parents c6ef09dfba4d
children
line wrap: on
line source

module aa6;

extern(C) int printf(char*, ...);

void main()
{
    int[int] aa;
    aa = [1:1, 2:4, 3:9, 4:16];
    printf("---\n");
    foreach(int k, int v; aa)
        printf("aa[%d] = %d\n", k, v);
    aa.rehash;
    printf("---\n");
    foreach(int k, int v; aa)
        printf("aa[%d] = %d\n", k, v);
    size_t n = aa.length;
    assert(n == 4);
    int[] keys = aa.keys;
    assert(keys[] == [1,2,3,4][]);
    int[] vals = aa.values;
    assert(vals[] == [1,4,9,16][]);
    aa.remove(3);
    printf("---\n");
    foreach(int k, int v; aa)
        printf("aa[%d] = %d\n", k, v);
    assert(aa.length == 3);
}