diff run/mini/aa6.d @ 1628:c6ef09dfba4d

add mini test set from ldc project
author Moritz Warning <moritzwarning@web.de>
date Mon, 10 Jan 2011 19:47:18 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/mini/aa6.d	Mon Jan 10 19:47:18 2011 +0100
@@ -0,0 +1,27 @@
+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);
+}