Changeset 2b4daf2 for tests/collections/stack.cfa
- Timestamp:
- Jan 7, 2021, 5:06:22 PM (5 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 5ad381b
- Parents:
- 42f6e07 (diff), 58fe85a (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. - File:
-
- 1 moved
-
tests/collections/stack.cfa (moved) (moved from tests/stack.cfa ) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tests/collections/stack.cfa
r42f6e07 r2b4daf2 14 14 i = p; 15 15 } 16 Fred *& Next( Fred * n ) { 17 return (Fred *)Next( (Colable *)n ); 18 } 16 19 17 20 Stack(Fred) fred; 18 StackIter(Fred) fredIter = { fred };21 StackIter(Fred) inter = { fred }; 19 22 Fred & f; 20 23 21 24 sout | nlOff; // turn off auto newline 22 25 23 for ( ; fredIter >>f; ) { // empty list26 for ( ; inter | f; ) { // empty list 24 27 sout | f.i | ' '; 25 28 } … … 30 33 } 31 34 32 for ( StackIter(Fred) iter = { fred }; iter >>f; ) {35 for ( StackIter(Fred) iter = { fred }; iter | f; ) { 33 36 sout | f.i | ' '; 34 37 } 35 38 sout | nl; 39 40 sout | head( fred ).i | nl; 36 41 37 42 for ( i; 9 ) { … … 39 44 } 40 45 41 for ( over( fredIter, fred ); fredIter >>f; ) {46 for ( over( inter, fred ); inter | f; ) { 42 47 sout | f.i | ' '; 43 48 } … … 47 52 push( fred, *new( 2 * i + 1 ) ); 48 53 } 49 for ( over( fredIter, fred ); fredIter >>f; ) {54 for ( over( inter, fred ); inter | f; ) { 50 55 sout | f.i | ' '; 51 56 } 52 57 sout | nl; 53 58 54 for ( over( fredIter, fred ); fredIter >>f; ) {59 for ( over( inter, fred ); inter | f; ) { 55 60 delete( &f ); 56 61 } … … 65 70 void ?{}( Mary & mary, int p ) with( mary ) { 66 71 ((Fred &)mary){ p }; 67 j = i = p; 72 j = p; 73 } 74 75 Mary *& Next( Mary * n ) { 76 return (Mary *)Next( (Fred *)n ); 68 77 } 69 78 … … 72 81 Mary & m; 73 82 74 for ( ; maryIter >>m; ) { // empty list83 for ( ; maryIter | m; ) { // empty list 75 84 sout | m.i | m.j | ' '; 76 85 } … … 81 90 } 82 91 83 for ( StackIter(Mary) iter = { mary }; iter >>m; ) {92 for ( StackIter(Mary) iter = { mary }; iter | m; ) { 84 93 sout | m.i | m.j | ' '; 85 94 } … … 90 99 } 91 100 92 for ( over( maryIter, mary ); maryIter >>m; ) {101 for ( over( maryIter, mary ); maryIter | m; ) { 93 102 sout | m.i | m.j | ' '; 94 103 } … … 98 107 push( mary, *new( 2 * i + 1 ) ); 99 108 } 100 for ( over( maryIter, mary ); maryIter >>m; ) {109 for ( over( maryIter, mary ); maryIter | m; ) { 101 110 sout | m.i | m.j | ' '; 102 111 } 103 112 sout | nl; 104 113 105 for ( over( maryIter, mary ); maryIter >>m; ) {114 for ( over( maryIter, mary ); maryIter | m; ) { 106 115 delete( &m ); 107 116 }
Note:
See TracChangeset
for help on using the changeset viewer.