X-Git-Url: https://git.harvie.cz/?a=blobdiff_plain;f=demos%2Flists.c;h=c92117c379fa5d109316577cf9ff41bb10d60d8d;hb=a30ccb5a13711904e08ce475aff75b037cab4abb;hp=2c4218d76d2b09e72167414e8875f0359f32e262;hpb=30628092e1e87a9273d018bb5547f7dba0afd430;p=svn%2FCll1h%2F.git diff --git a/demos/lists.c b/demos/lists.c index 2c4218d..c92117c 100644 --- a/demos/lists.c +++ b/demos/lists.c @@ -1,54 +1,64 @@ - #include "cll1.h" -struct Zaznam +def_mem(Record) { int i; - char *j; - list(Zaznam); -} *zaznam,*zaznamy=NULL; + str s; + list(Record); +}; program { - puts("4x insert(zaznam,zaznamy,order_by,i);"); - create(zaznam, Zaznam); - zaznam->i=1; - zaznam->j="ddd"; - insert(zaznam,zaznamy,order_by,i); - create(zaznam, Zaznam); - zaznam->i=3; - zaznam->j="bbbbb"; - insert(zaznam,zaznamy,order_by,i); - create(zaznam, Zaznam); - zaznam->i=0; - zaznam->j="e"; - insert(zaznam,zaznamy,order_by,i); - create(zaznam, Zaznam); - zaznam->i=2; - zaznam->j="cc"; - insert(zaznam,zaznamy,order_by,i); - every(zaznam,zaznamy)printf("i=%d, j=%s\n",zaznam->i,zaznam->j); - - puts("1x append(zaznam,zaznamy);"); - create(zaznam, Zaznam); - zaznam->i=4; - zaznam->j="aaa"; - append(zaznam,zaznamy); - every(zaznam,zaznamy)printf("i=%d, j=%s\n",zaznam->i,zaznam->j); - - puts("sort(zaznam,zaznamy,desc_order_by,i);"); - sort(zaznam,zaznamy,desc_order_by,i); - every(zaznam,zaznamy)printf("i=%d, j=%s\n",zaznam->i,zaznam->j); - - puts("sort(zaznam,zaznamy,desc_sort_by,j);"); - sort(zaznam,zaznamy,desc_sort_by,j); - every(zaznam,zaznamy)printf("i=%d, j=%s\n",zaznam->i,zaznam->j); - - puts("remove(zaznam,zaznamy,zaznam->i==1);"); - remove(zaznam,zaznamy,zaznam->i==1); - every(zaznam,zaznamy)printf("i=%d, j=%s\n",zaznam->i,zaznam->j); - - puts("drop(zaznam,zaznamy);"); - drop(zaznam,zaznamy); - every(zaznam,zaznamy)printf("i=%d, j=%s\n",zaznam->i,zaznam->j); + Record record,records=NULL; + + print("4x insert(record,records,order_by,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); }