#6 feature fuly implemented
[svn/Cll1h/.git] / demos / lists.c
index e31102eeed03411b19c135c6256b3ef5b839b2d6..81eddae23c3750e2ebb40e54f55610d15f5b96be 100644 (file)
@@ -1,55 +1,91 @@
 #include "cll1.h"
 
-mem Zaznam
+def_mem(Record)
 {
  int i;
char *j
- list(Zaznam);
str s
+ list(Record);
 };
 
 program
 { 
- def_mems(zaznam,zaznamy,Zaznam);
-
- print("4x insert(zaznam,zaznamy,order_by,i);");
- zaznam=get_mem(Zaznam);
- zaznam->i=1; 
- zaznam->j="ddd";
- insert(zaznam,zaznamy,order_by,i);
- zaznam=get_mem(Zaznam);
- zaznam->i=3; 
- zaznam->j="bbbbb";
- insert(zaznam,zaznamy,order_by,i);
- zaznam=get_mem(Zaznam);
- zaznam->i=4; 
- zaznam->j="e";
- insert(zaznam,zaznamy,order_by,i);
- zaznam=get_mem(Zaznam);
- zaznam->i=2; 
- zaznam->j="aaaa";
- insert(zaznam,zaznamy,order_by,i);
- for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
-
- print("1x append(zaznam,zaznamy);");
- zaznam=get_mem(Zaznam);
- zaznam->i=0; 
- zaznam->j="ccc";
- append(zaznam,zaznamy);
- for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
-
- print("sort(zaznam,zaznamy,desc_order_by,i);");
- sort(zaznam,zaznamy,desc_order_by,i);
- for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
-
- print("sort(zaznam,zaznamy,sort_by,j);");
- sort(zaznam,zaznamy,sort_by,j);
- for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
-
- print("remove(zaznam,zaznamy,zaznam->i==1);");
- remove(zaznam,zaznamy,zaznam->i==1);
- for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
-
- print("drop(zaznam,zaznamy);");
- drop(zaznam,zaznamy);
- for_each(zaznam,zaznamy) printf("i=%d, j=%s\n",zaznam->i,zaznam->j);
+ Record record, records=NULL;
+
+ print("4x insert(record,records,order_by_int,i);");
+
+ record=get_mem(Record);
+ record->i=1; 
+ record->s="ddd";
+ insert(record,records,order_by_int,i);
+
+ record=get_mem(Record);
+ record->i=3; 
+ record->s="BBBB";
+ insert(record,records,order_by_int,i);
+
+ record=get_mem(Record);
+ record->i=4; 
+ record->s="e";
+ insert(record,records,order_by_int,i);
+
+ record=get_mem(Record);
+ record->i=2; 
+ record->s="aaaa";
+ insert(record,records,order_by_int,i);
+
+ for_each(record,records)
+ {
+  printf("i=%d, s=%s\n",record->i,record->s);
+ }
+
+ print("1x append(record,records);");
+ record=get_mem(Record);
+ record->i=0; 
+ record->s="ccc";
+ append(record,records);
+ for_each(record,records)
+ {
+  printf("i=%d, s=%s\n",record->i,record->s);
+ }
+
+ print("sort(record,records,order_by_int_desc,i);");
+ sort(record,records,order_by_int_desc,i);
+
+ for_each(record,records)
+ {
+  printf("i=%d, s=%s\n",record->i,record->s);
+ }
+
+ print("sort(record,records,order_by_str,s);");
+ sort(record,records,order_by_str,s);
+
+ for_each(record,records)
+ {
+  printf("i=%d, s=%s\n",record->i,record->s);
+ }
+
+ print("sort(record,records,order_by_ascii_desc,s);");
+ sort(record,records,order_by_ascii_desc,s);
+ for_each(record,records)
+ {
+  printf("i=%d, s=%s\n",record->i,record->s);
+ }
+
+ print("remove(record,records,record->i==1);");
+ remove(record,records,record->i==1); 
+ for_each(record,records)
+ {
+  printf("i=%d, s=%s\n",record->i,record->s);
+ }
+
+ print("drop(record,records);");
+ drop(record,records);
+
+ for_each(record,records)
+ {
+  printf("i=%d, s=%s\n",record->i,record->s);
+ }
 }
This page took 0.141816 seconds and 4 git commands to generate.