lama_byterun/stdlib/regression/test01.lama

50 lines
1.2 KiB
Text

import Collection;
var s = emptySet (compare), i;
for i := 0, i < 100, i := i+1
do
s := addSet (s, i);
validateColl (s)
od;
printf ("Set internal structure: %s\n", internalOf (s).string);
printf ("Set elements: %s\n", elements (s).string);
for i := 0, i < 100, i := i+1
do
printf ("Testing %-3d => %d\n", i, memSet (s, i));
printf ("Testing %-3d => %d\n", i+100, memSet (s, i+100))
od;
for i := 50, i < 150, i := i+1
do
s := removeSet (s, i);
validateColl (s)
od;
printf ("Set internal structure: %s\n", internalOf (s).string);
printf ("Set elements: %s\n", elements (s).string);
for i := 0, i < 100, i := i+1
do
printf ("Testing %-3d => %d\n", i, memSet (s, i))
od;
printf ("List set: %s\n", internalOf (listSet ({1, 2, 3, 4, 5}, compare)).string);
(
var u = union (listSet ({1, 2, 3, 4, 5}, compare), listSet ({11, 22, 33, 44, 55}, compare)), u1;
validateColl (u);
printf ("Set union: %s\n", internalOf (u).string);
printf ("Elements: %s\n", elements (u).string);
u1 := diff (u, listSet ({1, 22, 3, 44, 5}, compare));
validateColl (u1);
printf ("Set difference: %s\n", internalOf (u1).string);
printf ("Elements: %s\n", elements (u1).string)
)