Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/bits/stack_example.cfa

    r3d0560d r5e82d56  
    1717        Stack(Fred) fred;
    1818        StackIter(Fred) fredIter = { fred };
    19         Fred & f;
     19        Fred * f;
     20        int i;
    2021
    2122        sout | nlOff;                                                                           // turn off auto newline
    2223
    2324        for ( ; fredIter >> f; ) {                                                      // empty list
    24                 sout | f.i | ' ';
     25                sout | f->i | ' ';
    2526        }
    2627        sout | "empty" | nl;
    2728       
    28         for ( i; 10 ) {
     29        for ( i = 0; i < 10; i += 1 ) {
    2930                push( fred, new( 2 * i ) );
    3031        }
    3132
    32         for ( StackIter(Fred) iter = { fred }; iter >> f; ) {
    33                 sout | f.i | ' ';
     33        for ( over( fredIter, fred ); fredIter >> f; ) {
     34                sout | f->i | ' ';
    3435        }
    3536        sout | nl;
    3637       
    37         for ( i; 9 ) {
     38        for ( i = 0; i < 9; i += 1 ) {
    3839                delete( pop( fred ) );
    3940        }
    4041
    4142        for ( over( fredIter, fred ); fredIter >> f; ) {
    42                 sout | f.i | ' ';
     43                sout | f->i | ' ';
    4344        }
    4445        sout | nl;
    4546       
    46         for ( i; 10 ) {
     47        for ( i = 0; i < 10; i += 1 ) {
    4748                push( fred, new( 2 * i + 1 ) );
    4849        }
    4950        for ( over( fredIter, fred ); fredIter >> f; ) {
    50                 sout | f.i | ' ';
     51                sout | f->i | ' ';
    5152        }
    5253        sout | nl;
    5354
    5455        for ( over( fredIter, fred ); fredIter >> f; ) {
    55                 delete( &f );
     56                delete( f );
    5657        }
    5758
     
    7071        Stack(Mary) mary;
    7172        StackIter(Mary) maryIter = { mary };
    72         Mary & m;
     73        Mary * m;
    7374
    7475        for ( ; maryIter >> m; ) {                                                      // empty list
    75                 sout | m.i | m.j | ' ';
     76                sout | m->i | m->j | ' ';
    7677        }
    7778        sout | "empty" | nl;
    7879       
    79         for ( i; 10 ) {
     80        for ( i = 0; i < 10; i += 1 ) {
    8081                push( mary, new( 2 * i ) );
    8182        }
    8283
    83         for ( StackIter(Mary) iter = { mary }; iter >> m; ) {
    84                 sout | m.i | m.j | ' ';
     84        for ( over( maryIter, mary ); maryIter >> m; ) {
     85                sout | m->i | m->j | ' ';
    8586        }
    8687        sout | nl;
    8788       
    88         for ( i; 9 ) {
     89        for ( i = 0; i < 9; i += 1 ) {
    8990                delete( pop( mary ) );
    9091        }
    9192
    9293        for ( over( maryIter, mary ); maryIter >> m; ) {
    93                 sout | m.i | m.j | ' ';
     94                sout | m->i | m->j | ' ';
    9495        }
    9596        sout | nl;
    9697       
    97         for ( i; 10 ) {
     98        for ( i = 0; i < 10; i += 1 ) {
    9899                push( mary, new( 2 * i + 1 ) );
    99100        }
    100101        for ( over( maryIter, mary ); maryIter >> m; ) {
    101                 sout | m.i | m.j | ' ';
     102                sout | m->i | m->j | ' ';
    102103        }
    103104        sout | nl;
    104105
    105106        for ( over( maryIter, mary ); maryIter >> m; ) {
    106                 delete( &m );
     107                delete( m );
    107108        }
    108109}
Note: See TracChangeset for help on using the changeset viewer.