Changes in tests/collections/queue.cfa [62a7cc0:de2f969]
- File:
-
- 1 edited
-
tests/collections/queue.cfa (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tests/collections/queue.cfa
r62a7cc0 rde2f969 33 33 } 34 34 35 sout | head( fred ).i | tail( fred ).i | nl; 35 sout | head(fred).i | nl; 36 sout | tail(fred).i | nl; 36 37 37 38 for ( QueueIter(Fred) iter = { fred }; iter >> f; ) { … … 53 54 } 54 55 55 Fred * head = new( -1 ), tail = { -2 }; 56 addHead( fred, *head ); 57 addTail( fred, tail ); 56 Fred * front = new( -1 ); 57 addHead( fred, *front ); 58 sout | succ( fred, front )->i | nl; 59 remove( fred, *front ); 60 delete( front ); 58 61 59 sout | head( fred ).i | succ( fred, head )->i | tail( fred ).i | nl; 60 for ( over( fredIter, fred ); fredIter >> f; ) { 61 sout | f.i | ' '; 62 } 63 sout | nl; 64 65 remove( fred, *head ); 66 remove( fred, tail ); 67 delete( head ); 68 delete( &dropTail( fred ) ); 62 Fred & end = dropTail( fred ); 63 delete( &end ); 69 64 70 65 for ( over( fredIter, fred ); fredIter >> f; ) { … … 73 68 sout | nl; 74 69 75 for ( i; 5) {76 delete( & dropTail( fred ));70 for ( over( fredIter, fred ); fredIter >> f; ) { 71 delete( &f ); 77 72 } 78 for ( over( fredIter, fred ); fredIter >> f; ) { 79 sout | f.i | ' '; 73 74 Queue(Fred) fred0; 75 Fred * middle; 76 for ( i; 10 ) { 77 if( i == 5) { 78 middle = new( i ); 79 add( fred0, *middle ); 80 continue; 81 } 82 add( fred0, *new( i ) ); 80 83 } 81 sout | nl;82 84 83 for ( over( fredIter, fred ); fredIter >> f; ) { 84 delete( &remove( fred, f ) ); 85 } 86 for ( over( fredIter, fred ); fredIter >> f; ) { 87 sout | f.i | ' '; 88 } 89 sout | "empty" | nl; 90 91 Fred & middle; 92 for ( i; 10 ) { 93 add( fred, *new( i ) ); 94 if ( i == 4 ) { 95 &middle = &tail( fred ); 96 } 97 } 98 for ( QueueIter(Fred) iter = { fred }; iter >> f; ) { 85 for ( QueueIter(Fred) iter = { fred0 }; iter >> f; ) { 99 86 sout | f.i | ' '; 100 87 } … … 103 90 Queue(Fred) fred2; 104 91 105 split( fred2, fred , middle);92 split( fred2, fred0, *middle); 106 93 107 for ( over( fredIter, fred ); fredIter >> f; ) {94 for ( over( fredIter, fred0 ); fredIter >> f; ) { 108 95 sout | f.i | ' '; 109 96 } … … 115 102 sout | nl; 116 103 117 transfer( fred , fred2);104 transfer( fred0, fred2); 118 105 119 for ( over( fredIter, fred ); fredIter >> f; ) {106 for ( over( fredIter, fred0 ); fredIter >> f; ) { 120 107 sout | f.i | ' '; 121 108 } 122 109 sout | nl; 123 110 124 for ( over( fredIter, fred ); fredIter >> f; ) {111 for ( over( fredIter, fred0 ); fredIter >> f; ) { 125 112 delete( &f ); 126 113 } … … 135 122 void ?{}( Mary & mary, int p ) with( mary ) { 136 123 ((Fred &)mary){ p }; 137 j = p;124 j = i = p; 138 125 } 126 139 127 Mary *& Next( Mary * n ) { 140 128 return (Mary *)Next( (Fred *)n ); … … 153 141 add( mary, *new( 2 * i ) ); 154 142 } 155 156 sout | head( mary ).i | tail( mary ).i | nl;157 143 158 144 for ( QueueIter(Mary) iter = { mary }; iter >> m; ) { … … 173 159 add( mary, *new( 2 * i + 1 ) ); 174 160 } 175 176 Mary * head = new( -1 ), tail = { -1 };177 addHead( mary, *head );178 addTail( mary, tail );179 sout | head( mary ).i | succ( mary, head )->i | tail( mary ).i | nl;180 remove( mary, *head );181 remove( mary, tail );182 delete( (Mary *)head );183 delete( &dropTail( mary ) );184 185 161 for ( over( maryIter, mary ); maryIter >> m; ) { 186 162 sout | m.i | m.j | ' '; … … 189 165 190 166 for ( over( maryIter, mary ); maryIter >> m; ) { 191 delete( &remove( mary, m ) );192 }193 194 Mary & middle;195 for ( i; 10 ) {196 add( mary, *new( i ) );197 if ( i == 4 ) {198 &middle = &tail( mary );199 }200 }201 for ( QueueIter(Mary) iter = { mary }; iter >> m; ) {202 sout | m.i | m.j | ' ';203 }204 sout | nl;205 206 Queue(Mary) mary2;207 208 split( mary2, mary, middle );209 210 for ( over( maryIter, mary ); maryIter >> m; ) {211 sout | m.i | m.j | ' ';212 }213 sout | nl;214 for ( over( maryIter, mary2 ); maryIter >> m; ) {215 sout | m.i | m.j | ' ';216 }217 sout | nl;218 219 transfer( mary, mary2 );220 221 for ( over( maryIter, mary ); maryIter >> m; ) {222 sout | m.i | m.j | ' ';223 }224 sout | nl;225 for ( over( maryIter, mary ); maryIter >> m; ) {226 167 delete( &m ); 227 168 }
Note:
See TracChangeset
for help on using the changeset viewer.