#6 feature fuly implemented
[svn/Cll1h/.git] / demos / lists.c
CommitLineData
30628092 1#include "cll1.h"
2
4643aeaf 3def_mem(Record)
30628092 4{
5 int i;
61ad8a2b 6 str s;
4643aeaf 7 list(Record);
f5725936 8};
30628092 9
04a13a6f 10program
30628092 11{
b27abb8a 12 Record record, records=NULL;
4643aeaf 13
b27abb8a 14 print("4x insert(record,records,order_by_int,i);");
4643aeaf 15
16 record=get_mem(Record);
17 record->i=1;
18 record->s="ddd";
ce26b4aa 19 insert(record,records,order_by_int,i);
4643aeaf 20
21 record=get_mem(Record);
22 record->i=3;
ce26b4aa 23 record->s="BBBB";
24 insert(record,records,order_by_int,i);
4643aeaf 25
26 record=get_mem(Record);
27 record->i=4;
28 record->s="e";
ce26b4aa 29 insert(record,records,order_by_int,i);
4643aeaf 30
31 record=get_mem(Record);
32 record->i=2;
33 record->s="aaaa";
ce26b4aa 34 insert(record,records,order_by_int,i);
4643aeaf 35
b27abb8a 36 for_each(record,records)
37 {
38 printf("i=%d, s=%s\n",record->i,record->s);
39 }
4643aeaf 40
ce26b4aa 41 print("1x append(record,records);");
4643aeaf 42 record=get_mem(Record);
43 record->i=0;
44 record->s="ccc";
ce26b4aa 45 append(record,records);
b27abb8a 46
47 for_each(record,records)
48 {
49 printf("i=%d, s=%s\n",record->i,record->s);
50 }
4643aeaf 51
ce26b4aa 52 print("sort(record,records,order_by_int_desc,i);");
53 sort(record,records,order_by_int_desc,i);
b27abb8a 54
55 for_each(record,records)
56 {
57 printf("i=%d, s=%s\n",record->i,record->s);
58 }
4643aeaf 59
ce26b4aa 60 print("sort(record,records,order_by_str,s);");
61 sort(record,records,order_by_str,s);
b27abb8a 62
63 for_each(record,records)
64 {
65 printf("i=%d, s=%s\n",record->i,record->s);
66 }
4643aeaf 67
ce26b4aa 68 print("sort(record,records,order_by_ascii_desc,s);");
69 sort(record,records,order_by_ascii_desc,s);
b27abb8a 70
71 for_each(record,records)
72 {
73 printf("i=%d, s=%s\n",record->i,record->s);
74 }
4643aeaf 75
ce26b4aa 76 print("remove(record,records,record->i==1);");
b27abb8a 77 remove(record,records,record->i==1);
78
79 for_each(record,records)
80 {
81 printf("i=%d, s=%s\n",record->i,record->s);
82 }
ce26b4aa 83
84 print("drop(record,records);");
85 drop(record,records);
b27abb8a 86
87 for_each(record,records)
88 {
89 printf("i=%d, s=%s\n",record->i,record->s);
90 }
30628092 91}
This page took 0.248171 seconds and 4 git commands to generate.