Ignore:
Timestamp:
Dec 28, 2020, 4:13:58 PM (10 months ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
arm-eh, jacob/cs343-translation, master, new-ast-unique-expr
Children:
6ae5c22
Parents:
b6460bf (diff), bf1914e (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/collections/sequence.cfa

    rb6460bf r3e36f22  
    2222
    2323        Sequence(Fred) fred;
    24         SeqIter(Fred) fredIter = { fred };
     24        SeqIter(Fred) iter = { fred };
    2525        Fred & f;
    2626
    2727        sout | nlOff;                                                                           // turn off auto newline
    2828
    29         for ( ; fredIter >> f; ) {                                                      // empty list
     29        for ( ; iter | f; ) {                                                   // empty list
    3030                sout | f.i | ' ';
    3131        }
     
    3838        sout | head( fred ).i | tail( fred ).i | nl;
    3939
    40         for ( SeqIter(Fred) iter = { fred }; iter >> f; ) {
     40        for ( SeqIter(Fred) iter = { fred }; iter | f; ) {
    4141                sout | f.i | ' ';
    4242        }
     
    4747        }
    4848
    49         for ( over( fredIter, fred ); fredIter >> f; ) {
     49        for ( over( iter, fred ); iter | f; ) {
    5050                sout | f.i | ' ';
    5151        }
     
    6161
    6262        sout | head( fred ).i | succ( fred, head )->i | tail( fred ).i | nl;
    63         for ( over( fredIter, fred ); fredIter >> f; ) {
     63
     64        for ( over( iter, fred ); iter | f; ) {
    6465                sout | f.i | ' ';
    6566        }
     
    7172        delete( &dropTail( fred ) );
    7273
    73         for ( over( fredIter, fred ); fredIter >> f; ) {
     74        for ( over( iter, fred ); iter | f; ) {
    7475                sout | f.i | ' ';
    7576        }
     
    7980                delete( &dropTail( fred ) );
    8081        }
    81         for ( over( fredIter, fred ); fredIter >> f; ) {
    82                 sout | f.i | ' ';
    83         }
    84         sout | nl;
    85 
    86         for ( over( fredIter, fred ); fredIter >> f; ) {
     82        for ( over( iter, fred ); iter | f; ) {
     83                sout | f.i | ' ';
     84        }
     85        sout | nl;
     86
     87        for ( over( iter, fred ); iter | f; ) {
    8788                delete( &remove( fred, f ) );
    8889        }
    89         for ( over( fredIter, fred ); fredIter >> f; ) {
     90        for ( over( iter, fred ); iter | f; ) {
    9091                sout | f.i | ' ';
    9192        }
     
    9495        Fred & middle;
    9596        for ( i; 10 ) {
    96                 addHead( fred, *new( i ) );                                             // reverse oder
     97                addHead( fred, *new( i ) );                                             // reverse order
    9798                if ( i == 5 ) {
    9899                        &middle = &head( fred );
    99100                }
    100101        }
    101         for ( SeqIterRev(Fred) iter = { fred }; iter >> f; ) {
     102        for ( SeqIterRev(Fred) riter = { fred }; riter | f; ) {
    102103                sout | f.i | ' ';
    103104        }
     
    109110
    110111        sout | head( fred ).i | succ( fred, head )->i | tail( fred ).i | nl;
    111         for ( over( fredIter, fred ); fredIter >> f; ) {
     112        for ( over( iter, fred ); iter | f; ) {
    112113                sout | f.i | ' ';
    113114        }
     
    119120        delete( &dropTail( fred ) );
    120121
    121         for ( over( fredIter, fred ); fredIter >> f; ) {
     122        for ( over( iter, fred ); iter | f; ) {
    122123                sout | f.i | ' ';
    123124        }
     
    128129        split( fred2, fred, middle );
    129130
    130         for ( over( fredIter, fred ); fredIter >> f; ) {
    131                 sout | f.i | ' ';
    132         }
    133         sout | nl;
    134 
    135         for ( over( fredIter, fred2 ); fredIter >> f; ) {
     131        for ( over( iter, fred ); iter | f; ) {
     132                sout | f.i | ' ';
     133        }
     134        sout | nl;
     135
     136        for ( over( iter, fred2 ); iter | f; ) {
    136137                sout | f.i | ' ';
    137138        }
     
    140141        transfer( fred, fred2 );
    141142
    142         for ( over( fredIter, fred ); fredIter >> f; ) {
    143                 sout | f.i | ' ';
    144         }
    145         sout | nl;
    146 
    147         for ( over( fredIter, fred ); fredIter >> f; ) {
     143        for ( over( iter, fred ); iter | f; ) {
     144                sout | f.i | ' ';
     145        }
     146        sout | nl;
     147
     148        for ( over( iter, fred ); iter | f; ) {
    148149                delete( &f );
    149150        }
     
    168169
    169170        Sequence(Mary) mary;
    170         SeqIter(Mary) maryIter = { mary };
     171        SeqIter(Mary) iter = { mary };
    171172        Mary & m;
    172173
    173         for ( ; maryIter >> m; ) {                                                      // empty list
     174        for ( ; iter | m; ) {                                                   // empty list
    174175                sout | m.i | m.j | ' ';
    175176        }
     
    182183        sout | head( mary ).i | tail( mary ).i | nl;
    183184
    184         for ( SeqIter(Mary) iter = { mary }; iter >> m; ) {
     185        for ( SeqIter(Mary) iter = { mary }; iter | m; ) {
    185186                sout | m.i | m.j | ' ';
    186187        }
     
    191192        }
    192193
    193         for ( over( maryIter, mary ); maryIter >> m; ) {
     194        for ( over( iter, mary ); iter | m; ) {
    194195                sout | m.i | m.j | ' ';
    195196        }
     
    200201        }
    201202
    202         Mary * head = new( -1 ), tail = { -1 };
     203        Mary * head = new( -1 ), tail = { -2 };
    203204        addHead( mary, *head );
    204205        addTail( mary, tail );
     206
    205207        sout | head( mary ).i | succ( mary, head )->i | tail( mary ).i | nl;
     208
     209        for ( over( iter, mary ); iter | m; ) {
     210                sout | m.i | m.j | ' ';
     211        }
     212        sout | nl;
     213
    206214        remove( mary, *head );
    207215        remove( mary, tail );
     
    209217        delete( &dropTail( mary ) );
    210218
    211         for ( over( maryIter, mary ); maryIter >> m; ) {
    212                 sout | m.i | m.j | ' ';
    213         }
    214         sout | nl;
    215 
    216         for ( over( maryIter, mary ); maryIter >> m; ) {
     219        for ( over( iter, mary ); iter | m; ) {
     220                sout | m.i | m.j | ' ';
     221        }
     222        sout | nl;
     223
     224        for ( i; 5 ) {
     225                delete( &dropTail( mary ) );
     226        }
     227        for ( over( iter, mary ); iter | m; ) {
     228                sout | m.i | m.j | ' ';
     229        }
     230        sout | nl;
     231
     232        for ( over( iter, mary ); iter | m; ) {
    217233                delete( &remove( mary, m ) );
    218234        }
     235        for ( over( iter, mary ); iter | m; ) {
     236                sout | m.i | m.j | ' ';
     237        }
     238        sout | "empty" | nl;
    219239
    220240        Mary & middle;
     
    225245                }
    226246        }
    227         for ( SeqIter(Mary) iter = { mary }; iter >> m; ) {
     247        for ( SeqIter(Mary) iter = { mary }; iter | m; ) {
    228248                sout | m.i | m.j | ' ';
    229249        }
     
    234254        split( mary2, mary, middle );
    235255
    236         for ( over( maryIter, mary ); maryIter >> m; ) {
    237                 sout | m.i | m.j | ' ';
    238         }
    239         sout | nl;
    240         for ( over( maryIter, mary2 ); maryIter >> m; ) {
     256        for ( over( iter, mary ); iter | m; ) {
     257                sout | m.i | m.j | ' ';
     258        }
     259        sout | nl;
     260        for ( over( iter, mary2 ); iter | m; ) {
    241261                sout | m.i | m.j | ' ';
    242262        }
     
    245265        transfer( mary, mary2 );
    246266
    247         for ( over( maryIter, mary ); maryIter >> m; ) {
    248                 sout | m.i | m.j | ' ';
    249         }
    250         sout | nl;
    251         for ( over( maryIter, mary ); maryIter >> m; ) {
     267        for ( over( iter, mary ); iter | m; ) {
     268                sout | m.i | m.j | ' ';
     269        }
     270        sout | nl;
     271
     272        for ( over( iter, mary ); iter | m; ) {
    252273                delete( &m );
    253274        }
Note: See TracChangeset for help on using the changeset viewer.