Changeset 6b33e89 for tests/list


Ignore:
Timestamp:
Apr 25, 2025, 7:39:09 AM (5 months ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
master
Children:
65bd3c2
Parents:
b195498
Message:

change backquote call to regular call

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/list/dlist-insert-remove.cfa

    rb195498 r6b33e89  
    5959        do {
    6060                sout | f.adatum;
    61         } while (f`moveNext);
     61        } while (advance( f ));
    6262}
    6363
     
    6666        do {
    6767                sout | f.adatum;
    68         } while (f`movePrev);
     68        } while (recede( f ));
    6969}
    7070
     
    9494        do {
    9595                sout | f.adatum;
    96         } while (f`moveNext);
     96        } while (advance( f ));
    9797}
    9898
     
    101101        do {
    102102                sout | f.adatum;
    103         } while (f`movePrev);
     103        } while (recede( f ));
    104104}
    105105
     
    127127        do {
    128128                sout | m.anotherdatum;
    129         } while (m`moveNext);
     129        } while (advance( m ));
    130130}
    131131
     
    133133        do {
    134134                sout | m.anotherdatum;
    135         } while (m`movePrev);
     135        } while (recede( m ));
    136136}
    137137
     
    423423        dlist(fred, fred.mine) lf;
    424424
    425         assert( & lf`first == 0p );
    426         assert( & lf`last == 0p );
     425        assert( &first( lf ) == 0p );
     426        assert( &last( lf ) == 0p );
    427427
    428428        insert_first(lf, f1);
    429429
    430         assert( & lf`first == & f1 );
    431         assert( & lf`last  == & f1 );
     430        assert( &first( lf ) == &f1 );
     431        assert( &last( lf )  == &f1 );
    432432
    433433        verify(validate(lf));
     
    440440        printYourFreddies(f1, f2, 0);   // 3.14; 3.14; 0.5; 0.5 (unmodified)
    441441
    442         assert( & lf`first == & f1 );
    443         assert( & lf`last  == & f2 );
     442        assert( &first( lf ) == &f1 );
     443        assert( &last( lf )  == &f2 );
    444444}
    445445
     
    451451        dlist(fred, fred.yours) lf;
    452452
    453         assert( & lf`first == 0p );
    454         assert( & lf`last == 0p );
     453        assert( &first( lf ) == 0p );
     454        assert( &last( lf ) == 0p );
    455455
    456456        insert_first(lf, f1);
    457457
    458         assert( & lf`first == & f1 );
    459         assert( & lf`last  == & f1 );
     458        assert( &first( lf ) == & f1 );
     459        assert( &last( lf )  == & f1 );
    460460
    461461        verify(validate(lf));
     
    468468        printYourFreddies(f1, f2, 0);   // 3.14, 0.5; 3.14; 0.5; 0.5, 3.14 (modified)
    469469
    470         assert( & lf`first == & f1 );
    471         assert( & lf`last  == & f2 );
     470        assert( &first( lf ) == & f1 );
     471        assert( &last( lf )  == & f2 );
    472472}
    473473
     
    479479        dlist(mary) lm;
    480480
    481         assert( & lm`first == 0p );
    482         assert( & lm`last == 0p );
     481        assert( &first( lm ) == 0p );
     482        assert( &last( lm ) == 0p );
    483483
    484484        insert_first(lm, m1);
    485485
    486         assert( & lm`first == & m1 );
    487         assert( & lm`last  == & m1 );
     486        assert( &first( lm ) == & m1 );
     487        assert( &last( lm )  == & m1 );
    488488
    489489        verify(validate(lm));
     
    495495        printMariatheotokos(m1, m2, 0); // 3.14, 0.5; 3.14; 0.5; 0.5, 3.14 (modified)
    496496
    497         assert( & lm`first == & m1 );
    498         assert( & lm`last  == & m2 );
     497        assert( &first( lm ) == & m1 );
     498        assert( &last( lm )  == & m2 );
    499499}
    500500
     
    516516        dlist(fred, fred.mine) lf;
    517517
    518         assert( & lf`first == 0p );
    519         assert( & lf`last == 0p );
     518        assert( &first( lf ) == 0p );
     519        assert( &last( lf ) == 0p );
    520520
    521521        insert_last(lf, f2);
    522522
    523         assert( & lf`first == & f2 );
    524         assert( & lf`last  == & f2 );
     523        assert( &first( lf ) == & f2 );
     524        assert( &last( lf )  == & f2 );
    525525
    526526        verify(validate(lf));
     
    533533        printYourFreddies(f1, f2, 0);   // 3.14; 3.14; 0.5; 0.5 (unmodified)
    534534
    535         assert( & lf`first == & f1 );
    536         assert( & lf`last  == & f2 );
     535        assert( &first( lf ) == & f1 );
     536        assert( &last( lf )  == & f2 );
    537537}
    538538
     
    544544        dlist(fred, fred.yours) lf;
    545545
    546         assert( & lf`first == 0p );
    547         assert( & lf`last == 0p );
     546        assert( &first( lf ) == 0p );
     547        assert( &last( lf ) == 0p );
    548548
    549549        insert_last(lf, f2);
    550550
    551         assert( & lf`first == & f2 );
    552         assert( & lf`last  == & f2 );
     551        assert( &first( lf ) == & f2 );
     552        assert( &last( lf )  == & f2 );
    553553
    554554        verify(validate(lf));
     
    561561        printYourFreddies(f1, f2, 0);   // 3.14, 0.5; 3.14; 0.5; 0.5, 3.14 (modified)
    562562
    563         assert( & lf`first == & f1 );
    564         assert( & lf`last  == & f2 );
     563        assert( &first( lf ) == & f1 );
     564        assert( &last( lf )  == & f2 );
    565565}
    566566
     
    572572        dlist(mary) lm;
    573573
    574         assert( & lm`first == 0p );
    575         assert( & lm`last == 0p );
     574        assert( &first( lm ) == 0p );
     575        assert( &last( lm ) == 0p );
    576576
    577577        insert_last(lm, m2);
    578578
    579         assert( & lm`first == & m2 );
    580         assert( & lm`last  == & m2 );
     579        assert( &first( lm ) == & m2 );
     580        assert( &last( lm )  == & m2 );
    581581
    582582        verify(validate(lm));
     
    588588        printMariatheotokos(m1, m2, 0); // 3.14, 0.5; 3.14; 0.5; 0.5, 3.14 (modified)
    589589
    590         assert( & lm`first == & m1 );
    591         assert( & lm`last  == & m2 );
     590        assert( &first( lm ) == & m1 );
     591        assert( &last( lm )  == & m2 );
    592592}
    593593#if 0
     
    891891        insert_last(fly, f3);
    892892
    893         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    894         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     893        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     894        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    895895
    896896        verify(validate(fly));
     
    902902        verify(validate(flm));
    903903
    904         printMyFreddies(flm`first, flm`last, 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
    905         printYourFreddies(fly`first, fly`last, 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     904        printMyFreddies(first( flm ), last( flm ), 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
     905        printYourFreddies(first( fly ), last( fly ), 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    906906
    907907        // observe f1 is now solo in mine; in yours, it was just traversed
     
    930930        insert_last(fly, f3);
    931931
    932         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    933         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     932        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     933        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    934934
    935935        verify(validate(fly));
     
    941941        verify(validate(flm));
    942942
    943         printMyFreddies(flm`first, flm`last, 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    944         printYourFreddies(fly`first, fly`last, 0);   // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
     943        printMyFreddies(first( flm ), last( flm ), 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     944        printYourFreddies(first( fly ), last( fly ), 0);   // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
    945945
    946946        // observe f1 is now solo in yours; in mine, it was just traversed
     
    963963        insert_last(ml, m3);
    964964
    965         printMariatheotokos(ml`first, ml`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     965        printMariatheotokos(first( ml ), last( ml ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    966966
    967967        verify(validate(ml));
     
    971971        verify(validate(ml));
    972972
    973         printMariatheotokos(ml`first, ml`last, 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
     973        printMariatheotokos(first( ml ), last( ml ), 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
    974974
    975975        // observe m1 is now solo
     
    10071007        insert_last(fly, f3);
    10081008
    1009         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1010         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1009        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1010        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    10111011
    10121012        verify(validate(fly));
     
    10181018        verify(validate(flm));
    10191019
    1020         printMyFreddies(flm`first, flm`last, 0);     // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
    1021         printYourFreddies(fly`first, fly`last, 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     1020        printMyFreddies(first( flm ), last( flm ), 0);     // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
     1021        printYourFreddies(first( fly ), last( fly ), 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    10221022
    10231023        // observe f3 is now solo in mine; in yours, it was just traversed
     
    10451045        insert_last(fly, f3);
    10461046
    1047         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1048         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1047        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1048        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    10491049
    10501050        verify(validate(fly));
     
    10561056        verify(validate(flm));
    10571057
    1058         printMyFreddies(flm`first, flm`last, 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    1059         printYourFreddies(fly`first, fly`last, 0);   // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
     1058        printMyFreddies(first( flm ), last( flm ), 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     1059        printYourFreddies(first( fly ), last( fly ), 0);   // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
    10601060
    10611061        // observe f3 is now solo in yours; in mine, it was just traversed
     
    10781078        insert_last(ml, m3);
    10791079
    1080         printMariatheotokos(ml`first, ml`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1080        printMariatheotokos(first( ml ), last( ml ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    10811081
    10821082        verify(validate(ml));
     
    10861086        verify(validate(ml));
    10871087
    1088         printMariatheotokos(ml`first, ml`last, 0);     // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
     1088        printMariatheotokos(first( ml ), last( ml ), 0);     // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
    10891089
    10901090        // observe m3 is now solo
     
    11161116        insert_last(fly, f);
    11171117
    1118         printMyFreddies(flm`first, flm`last, 1);     // 0.7; 0.7; 0.7; 0.7
    1119         printYourFreddies(fly`first, fly`last, 1);   // 0.7; 0.7; 0.7; 0.7
     1118        printMyFreddies(first( flm ), last( flm ), 1);     // 0.7; 0.7; 0.7; 0.7
     1119        printYourFreddies(first( fly ), last( fly ), 1);   // 0.7; 0.7; 0.7; 0.7
    11201120
    11211121        verify(validate(fly));
     
    11271127        verify(validate(flm));
    11281128
    1129         assert( & flm`first == 0p );
    1130         assert( & flm`last == 0p );
    1131 
    1132         printYourFreddies(fly`first, fly`last, 0);   // 0.7; 0.7; 0.7; 0.7 (unmodified)
     1129        assert( &first( flm ) == 0p );
     1130        assert( &last( flm ) == 0p );
     1131
     1132        printYourFreddies(first( fly ), last( fly ), 0);   // 0.7; 0.7; 0.7; 0.7 (unmodified)
    11331133
    11341134        // observe f is solo in mine (now unlisted); in yours, it was just traversed
     
    11421142        verify(validate(fly));
    11431143        verify(validate(flm));
    1144         printMyFreddies(flm`first, flm`last, 0);     // 0.7; 0.7; 0.7; 0.7
     1144        printMyFreddies(first( flm ), last( flm ), 0);     // 0.7; 0.7; 0.7; 0.7
    11451145}
    11461146
     
    11551155        insert_last(fly, f);
    11561156
    1157         printMyFreddies(flm`first, flm`last, 1);     // 0.7; 0.7; 0.7; 0.7
    1158         printYourFreddies(fly`first, fly`last, 1);   // 0.7; 0.7; 0.7; 0.7
     1157        printMyFreddies(first( flm ), last( flm ), 1);     // 0.7; 0.7; 0.7; 0.7
     1158        printYourFreddies(first( fly ), last( fly ), 1);   // 0.7; 0.7; 0.7; 0.7
    11591159
    11601160        verify(validate(fly));
     
    11661166        verify(validate(flm));
    11671167
    1168         assert( & fly`first == 0p );
    1169         assert( & fly`last == 0p );
    1170 
    1171         printYourFreddies(flm`first, flm`last, 0);   // 0.7; 0.7; 0.7; 0.7 (unmodified)
     1168        assert( &first( fly ) == 0p );
     1169        assert( &last( fly ) == 0p );
     1170
     1171        printYourFreddies(first( flm ), last( flm ), 0);   // 0.7; 0.7; 0.7; 0.7 (unmodified)
    11721172
    11731173        // observe f is solo in yours (now unlisted); in mine, it was just traversed
     
    11811181        verify(validate(fly));
    11821182        verify(validate(flm));
    1183         printYourFreddies(fly`first, fly`last, 0);     // 0.7; 0.7; 0.7; 0.7
     1183        printYourFreddies(first( fly ), last( fly ), 0);     // 0.7; 0.7; 0.7; 0.7
    11841184}
    11851185
     
    11911191        insert_last(ml, m);
    11921192
    1193         printMariatheotokos(ml`first, ml`last, 1);     // 0.7; 0.7; 0.7; 0.7
     1193        printMariatheotokos(first( ml ), last( ml ), 1);     // 0.7; 0.7; 0.7; 0.7
    11941194
    11951195        verify(validate(ml));
     
    11991199        verify(validate(ml));
    12001200
    1201         assert( & ml`first == 0p );
    1202         assert( & ml`last == 0p );
     1201        assert( &first( ml ) == 0p );
     1202        assert( &last( ml ) == 0p );
    12031203
    12041204        // observe f is solo in mine (now unlisted); in yours, it was just traversed
     
    12111211        insert_last(ml, m);
    12121212        verify(validate(ml));
    1213         printMariatheotokos(ml`first, ml`last, 0);     // 0.7; 0.7; 0.7; 0.7
     1213        printMariatheotokos(first( ml ), last( ml ), 0);     // 0.7; 0.7; 0.7; 0.7
    12141214}
    12151215
     
    12421242        insert_last(fly, f3);
    12431243
    1244         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1245         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1246 
    1247         verify(validate(fly));
    1248         verify(validate(flm));
    1249 
    1250         fred & popped = try_pop_front(flm);
    1251 
    1252         verify(validate(fly));
    1253         verify(validate(flm));
    1254 
    1255         printMyFreddies(flm`first, flm`last, 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
    1256         printYourFreddies(fly`first, fly`last, 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     1244        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1245        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1246
     1247        verify(validate(fly));
     1248        verify(validate(flm));
     1249
     1250        fred & popped = remove_first(flm);
     1251
     1252        verify(validate(fly));
     1253        verify(validate(flm));
     1254
     1255        printMyFreddies(first( flm ), last( flm ), 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
     1256        printYourFreddies(first( fly ), last( fly ), 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    12571257
    12581258        // observe f1 is now solo in mine; in yours, it was just traversed
     
    12781278        insert_last(fly, f3);
    12791279
    1280         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1281         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1282 
    1283         verify(validate(fly));
    1284         verify(validate(flm));
    1285 
    1286         fred & popped = try_pop_front(fly);
    1287 
    1288         verify(validate(fly));
    1289         verify(validate(flm));
    1290 
    1291         printMyFreddies(flm`first, flm`last, 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    1292         printYourFreddies(fly`first, fly`last, 0);   // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
     1280        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1281        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1282
     1283        verify(validate(fly));
     1284        verify(validate(flm));
     1285
     1286        fred & popped = remove_first(fly);
     1287
     1288        verify(validate(fly));
     1289        verify(validate(flm));
     1290
     1291        printMyFreddies(first( flm ), last( flm ), 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     1292        printYourFreddies(first( fly ), last( fly ), 0);   // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
    12931293
    12941294        // observe f1 is now solo in yours; in mine, it was just traversed
     
    13091309        insert_last(ml, m3);
    13101310
    1311         printMariatheotokos(ml`first, ml`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1311        printMariatheotokos(first( ml ), last( ml ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    13121312
    13131313        verify(validate(ml));
    13141314
    1315         mary & popped = try_pop_front(ml);
     1315        mary & popped = remove_first(ml);
    13161316
    13171317        verify(validate(ml));
    13181318
    1319         printMariatheotokos(ml`first, ml`last, 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
     1319        printMariatheotokos(first( ml ), last( ml ), 0);     // 2.7, 3.7;       2.7;  3.7;  3.7, 2.7      (modified)
    13201320
    13211321        // observe m1 is now solo
     
    13411341        insert_last(fly, f3);
    13421342
    1343         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1344         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1345 
    1346         verify(validate(fly));
    1347         verify(validate(flm));
    1348 
    1349         fred & popped = try_pop_back(flm);
    1350 
    1351         verify(validate(fly));
    1352         verify(validate(flm));
    1353 
    1354         printMyFreddies(flm`first, flm`last, 0);     // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
    1355         printYourFreddies(fly`first, fly`last, 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     1343        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1344        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1345
     1346        verify(validate(fly));
     1347        verify(validate(flm));
     1348
     1349        fred & popped = remove_last(flm);
     1350
     1351        verify(validate(fly));
     1352        verify(validate(flm));
     1353
     1354        printMyFreddies(first( flm ), last( flm ), 0);     // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
     1355        printYourFreddies(first( fly ), last( fly ), 0);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    13561356
    13571357        // observe f3 is now solo in mine; in yours, it was just traversed
     
    13771377        insert_last(fly, f3);
    13781378
    1379         printMyFreddies(flm`first, flm`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1380         printYourFreddies(fly`first, fly`last, 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    1381 
    1382         verify(validate(fly));
    1383         verify(validate(flm));
    1384 
    1385         fred & popped = try_pop_back(fly);
    1386 
    1387         verify(validate(fly));
    1388         verify(validate(flm));
    1389 
    1390         printMyFreddies(flm`first, flm`last, 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
    1391         printYourFreddies(fly`first, fly`last, 0);   // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
     1379        printMyFreddies(first( flm ), last( flm ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1380        printYourFreddies(first( fly ), last( fly ), 1);   // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1381
     1382        verify(validate(fly));
     1383        verify(validate(flm));
     1384
     1385        fred & popped = remove_last(fly);
     1386
     1387        verify(validate(fly));
     1388        verify(validate(flm));
     1389
     1390        printMyFreddies(first( flm ), last( flm ), 0);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7 (unmodified)
     1391        printYourFreddies(first( fly ), last( fly ), 0);   // 1.7, 2.7;       1.7;  2.7;  2.7, 1.7      (modified)
    13921392
    13931393        // observe f3 is now solo in yours; in mine, it was just traversed
     
    14081408        insert_last(ml, m3);
    14091409
    1410         printMariatheotokos(ml`first, ml`last, 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
     1410        printMariatheotokos(first( ml ), last( ml ), 1);     // 1.7, 2.7, 3.7;  1.7;  3.7;  3.7, 2.7, 1.7
    14111411
    14121412        verify(validate(ml));
    14131413
    1414         mary & popped = try_pop_back(ml);
     1414        mary & popped = remove_last(ml);
    14151415
    14161416        verify(validate(ml));
    14171417
    1418         printMariatheotokos(ml`first, ml`last, 0);     // 1.7, 1.7;       1.7;  2.7;  2.7, 1.7      (modified)
     1418        printMariatheotokos(first( ml ), last( ml ), 0);     // 1.7, 1.7;       1.7;  2.7;  2.7, 1.7      (modified)
    14191419
    14201420        // observe m1 is now solo
     
    14281428// Section 4g
    14291429//
    1430 // Test cases of `isEmpty, `hasPrev, `hasNext,
    1431 // try_pop_front, try_pop_back, modifications via `elems
     1430// Test cases of isEmpty, isFirst, isLast,
     1431// remove_first, remove_last, modifications via iter
    14321432//
    14331433// Example of call-side user code
     
    14411441        mary m3 = {3.7};
    14421442
    1443         dlist(mary) ml;                 assert( ml`isEmpty);
    1444 
    1445         insert_last(ml, m1);    assert(!ml`isEmpty);
    1446         insert_last(ml, m2);    assert(!ml`isEmpty);
    1447         insert_last(ml, m3);    assert(!ml`isEmpty);
    1448 
    1449         mary & m1prev = m1`prev;
    1450         mary & m1next = m1`next;
    1451         mary & m2prev = m2`prev;
    1452         mary & m2next = m2`next;
    1453         mary & m3prev = m3`prev;
    1454         mary & m3next = m3`next;
    1455 
    1456         assert (&m1prev == 0p);
    1457         assert (&m1next == &m2);
    1458         assert (&m2prev == &m1);
    1459         assert (&m2next == &m3);
    1460         assert (&m3prev == &m2);
    1461         assert (&m3next == 0p);
    1462 
    1463         assert(!m1`hasPrev);
    1464         assert( m1`hasNext);
    1465         assert( m2`hasPrev);
    1466         assert( m2`hasNext);
    1467         assert( m3`hasPrev);
    1468         assert(!m3`hasNext);
     1443        dlist(mary) ml;                 assert( isEmpty( ml ));
     1444
     1445        insert_last(ml, m1);    assert(!isEmpty( ml ));
     1446        insert_last(ml, m2);    assert(!isEmpty( ml ));
     1447        insert_last(ml, m3);    assert(!isEmpty( ml ));
     1448
     1449        mary & m1prev = prev( m1 );
     1450        mary & m1next = next( m1 );
     1451        mary & m2prev = prev( m2 );
     1452        mary & m2next = next( m2 );
     1453        mary & m3prev = prev( m3 );
     1454        mary & m3next = next( m3 );
     1455
     1456        assert( &m1prev == 0p );
     1457        assert( &m1next == &m2 );
     1458        assert( &m2prev == &m1 );
     1459        assert( &m2next == &m3 );
     1460        assert( &m3prev == &m2 );
     1461        assert( &m3next == 0p );
     1462
     1463        assert( ! isFirst( m1 ) );
     1464        assert( isLast( m1 ) );
     1465        assert( isFirst( m2 ) );
     1466        assert( isLast( m2 ) );
     1467        assert( isFirst( m3 ) );
     1468        assert( ! isLast( m3 ) );
    14691469
    14701470        printf("accessor_cases done\n");
     
    14861486        // queue, back to front
    14871487
    1488         assert( ml`isEmpty);
     1488        assert( isEmpty( ml ));
    14891489
    14901490        insert_last(ml, m1);
     
    14921492        insert_last(ml, m3);
    14931493
    1494         &m1r = & try_pop_front(ml);     assert(!ml`isEmpty);
    1495         &m2r = & try_pop_front(ml);     assert(!ml`isEmpty);
    1496         &m3r = & try_pop_front(ml);     assert( ml`isEmpty);
    1497         &mxr = & try_pop_front(ml);     assert( ml`isEmpty);
     1494        &m1r = & remove_first(ml);      assert(!isEmpty( ml ));
     1495        &m2r = & remove_first(ml);      assert(!isEmpty( ml ));
     1496        &m3r = & remove_first(ml);      assert( isEmpty( ml ));
     1497        &mxr = & remove_first(ml);      assert( isEmpty( ml ));
    14981498
    14991499        assert( &m1r == &m1 );
     
    15081508        // queue, front to back
    15091509
    1510         assert( ml`isEmpty);
     1510        assert( isEmpty( ml ));
    15111511
    15121512        insert_first(ml, m1);
     
    15141514        insert_first(ml, m3);
    15151515
    1516         &m1r = & try_pop_back(ml);      assert(!ml`isEmpty);
    1517         &m2r = & try_pop_back(ml);      assert(!ml`isEmpty);
    1518         &m3r = & try_pop_back(ml);      assert( ml`isEmpty);
    1519         &mxr = & try_pop_back(ml);      assert( ml`isEmpty);
     1516        &m1r = & remove_last(ml);       assert(!isEmpty( ml ));
     1517        &m2r = & remove_last(ml);       assert(!isEmpty( ml ));
     1518        &m3r = & remove_last(ml);       assert( isEmpty( ml ));
     1519        &mxr = & remove_last(ml);       assert( isEmpty( ml ));
    15201520
    15211521        assert( &m1r == &m1 );
     
    15301530        // stack at front
    15311531
    1532         assert( ml`isEmpty);
     1532        assert( isEmpty( ml ));
    15331533
    15341534        insert_first(ml, m1);
     
    15361536        insert_first(ml, m3);
    15371537
    1538         &m3r = & try_pop_front(ml);     assert(!ml`isEmpty);
    1539         &m2r = & try_pop_front(ml);     assert(!ml`isEmpty);
    1540         &m1r = & try_pop_front(ml);     assert( ml`isEmpty);
    1541         &mxr = & try_pop_front(ml);     assert( ml`isEmpty);
     1538        &m3r = & remove_first(ml);      assert(!isEmpty( ml ));
     1539        &m2r = & remove_first(ml);      assert(!isEmpty( ml ));
     1540        &m1r = & remove_first(ml);      assert( isEmpty( ml ));
     1541        &mxr = & remove_first(ml);      assert( isEmpty( ml ));
    15421542
    15431543        assert( &m1r == &m1 );
     
    15521552        // stack at back
    15531553
    1554         assert( ml`isEmpty);
     1554        assert( isEmpty( ml ));
    15551555
    15561556        insert_last(ml, m1);
     
    15581558        insert_last(ml, m3);
    15591559
    1560         &m3r = & try_pop_back(ml);      assert(!ml`isEmpty);
    1561         &m2r = & try_pop_back(ml);      assert(!ml`isEmpty);
    1562         &m1r = & try_pop_back(ml);      assert( ml`isEmpty);
    1563         &mxr = & try_pop_back(ml);      assert( ml`isEmpty);
     1560        &m3r = & remove_last(ml);       assert(!isEmpty( ml ));
     1561        &m2r = & remove_last(ml);       assert(!isEmpty( ml ));
     1562        &m1r = & remove_last(ml);       assert( isEmpty( ml ));
     1563        &mxr = & remove_last(ml);       assert( isEmpty( ml ));
    15641564
    15651565        assert( &m1r == &m1 );
     
    15801580
    15811581        dlist(mary) ml;
    1582         mary & mlorigin = ml`elems;
     1582        mary & mlorigin = iter( ml );
    15831583
    15841584        // insert before the origin
    15851585
    1586         insert_before( ml`elems, m1 );
    1587         assert( ! ml`isEmpty );
    1588 
    1589         mary & mlfirst = ml`first;
    1590         mary & mllast = ml`last;
     1586        insert_before( iter( ml ), m1 );
     1587        assert( ! isEmpty( ml ) );
     1588
     1589        mary & mlfirst = first( ml );
     1590        mary & mllast = last( ml );
    15911591
    15921592        assert( &m1 == & mlfirst );
     
    15951595        // moveNext after last goes back to origin, &vv
    15961596
    1597         bool canMoveNext = mllast`moveNext;
    1598         bool canMovePrev = mlfirst`movePrev;
     1597        bool canMoveNext = advance( mllast );
     1598        bool canMovePrev = recede( mlfirst );
    15991599
    16001600        assert( ! canMoveNext );
     
    16091609void test__isListed_cases__mary() {
    16101610
    1611         mary m1 = {1.7};        assert(! m1`isListed);
    1612         mary m2 = {2.7};        assert(! m2`isListed);
    1613         mary m3 = {3.7};        assert(! m3`isListed);
     1611        mary m1 = {1.7};        assert( ! isListed( m1 ) );
     1612        mary m2 = {2.7};        assert( ! isListed( m2 ) );
     1613        mary m3 = {3.7};        assert( ! isListed( m3 ) );
    16141614
    16151615        dlist(mary) ml;
    16161616
    1617         insert_last(ml, m1);    assert(  m1`isListed);  assert(! m2`isListed);
    1618         insert_last(ml, m2);    assert(  m2`isListed);  assert(! m3`isListed);
    1619         insert_last(ml, m3);    assert(  m3`isListed);
    1620 
    1621         remove( m1 );           assert(! m1`isListed);  assert(  m2`isListed);
    1622         remove( m2 );           assert(! m2`isListed);  assert(  m3`isListed);
    1623         remove( m3 );           assert(! m3`isListed);
     1617        insert_last(ml, m1);    assert( isListed( m1 ) );  assert(! isListed( m2 ) );
     1618        insert_last(ml, m2);    assert( isListed( m2 ) );  assert(! isListed( m3 ) );
     1619        insert_last(ml, m3);    assert( isListed( m3 ) );
     1620
     1621        remove( m1 );           assert( ! isListed( m1 ) );  assert(  isListed( m2 ) );
     1622        remove( m2 );           assert( ! isListed( m2 ) );  assert(  isListed( m3 ) );
     1623        remove( m3 );           assert( ! isListed( m3 ) );
    16241624
    16251625        printf("isListed cases done\n");
Note: See TracChangeset for help on using the changeset viewer.