implementation of specificication described in latest documentation changes
[svn/Cll1h/.git] / demos / lists.c
1 #include "cll1.h"
2
3 mem Zaznam
4 {
5 int i;
6 char *j;
7 list(Zaznam);
8 };
9
10 program
11 {
12 define_mems(zaznam,zaznamy,Zaznam);
13
14 print("4x insert(zaznam,zaznamy,order_by,i);");
15 zaznam=get_mem(Zaznam);
16 zaznam->i=1;
17 zaznam->j="ddd";
18 insert(zaznam,zaznamy,order_by,i);
19 zaznam=get_mem(Zaznam);
20 zaznam->i=3;
21 zaznam->j="bbbbb";
22 insert(zaznam,zaznamy,order_by,i);
23 zaznam=get_mem(Zaznam);
24 zaznam->i=4;
25 zaznam->j="e";
26 insert(zaznam,zaznamy,order_by,i);
27 zaznam=get_mem(Zaznam);
28 zaznam->i=2;
29 zaznam->j="aaaa";
30 insert(zaznam,zaznamy,order_by,i);
31 for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
32
33 print("1x append(zaznam,zaznamy);");
34 zaznam=get_mem(Zaznam);
35 zaznam->i=0;
36 zaznam->j="ccc";
37 append(zaznam,zaznamy);
38 for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
39
40 print("sort(zaznam,zaznamy,desc_order_by,i);");
41 sort(zaznam,zaznamy,desc_order_by,i);
42 for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
43
44 print("sort(zaznam,zaznamy,sort_by,j);");
45 sort(zaznam,zaznamy,sort_by,j);
46 for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
47
48 print("remove(zaznam,zaznamy,zaznam->i==1);");
49 remove(zaznam,zaznamy,zaznam->i==1);
50 for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
51
52 print("drop(zaznam,zaznamy);");
53 drop(zaznam,zaznamy);
54 for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
55 }
This page took 0.256226 seconds and 4 git commands to generate.