source: tests/vector.cfa @ d42969d

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
Last change on this file since d42969d was 200fcb3, checked in by Peter A. Buhr <pabuhr@…>, 6 years ago

add auto newline to sout, change endl to nl

  • Property mode set to 100644
File size: 1.4 KB
RevLine 
[bd34fc87]1//
[00b7cd3]2// Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
[bd34fc87]6//
[dc8511c]7// vector.cfa --
[bd34fc87]8//
[00b7cd3]9// Author           : Thierry Delisle
10// Created On       : Mon Jul  4 23:36:19 2016
11// Last Modified By : Peter A. Buhr
[200fcb3]12// Last Modified On : Tue Dec  4 22:02:39 2018
13// Update Count     : 29
[bd34fc87]14//
[ea29e73]15
[73abe95]16#include <fstream.hfa>
17#include <vector.hfa>
[00b7cd3]18
19#undef assert
20#define assert(x)                                                               \
21        do {                                                                            \
22                if ( !(x) ) {                                                   \
[200fcb3]23                        sout | "CHECK failed :" | #x | "at" | __FILE__ | " :" | __LINE__;       \
[00b7cd3]24                        abort();                                                        \
25                }                                                                               \
26        } while( 0 == 1 )
27
28int main() {
[67cf18c]29        vector( int ) iv;
[00b7cd3]30
31        assert( empty( &iv ) );
32        assert( size( &iv ) == 0 );
[200fcb3]33        sout | size( &iv );
[00b7cd3]34
35        push_back( &iv, 1 );
36        assert( size( &iv ) == 1 );
[200fcb3]37        sout | size( &iv );
[ed3f3bf4]38
[00b7cd3]39        push_back( &iv, 2 );
40        assert( size( &iv ) == 2 );
[200fcb3]41        sout | size( &iv );
[00b7cd3]42
43        push_back( &iv, 3 );
44        assert( size( &iv ) == 3 );
[200fcb3]45        sout | size( &iv );
[00b7cd3]46
47        assert( !empty( &iv ) );
48        assert( size( &iv ) == 3 );
49        assert( at( &iv, 0 ) == 1 );
50        assert( (&iv)[0] == 1 );
51        assert( at( &iv, 1 ) == 2 );
52        assert( (&iv)[1] == 2 );
53        assert( at( &iv, 2 ) == 3 );
54        assert( (&iv)[2] == 3 );
55
56        clear( &iv );
57
58        assert( empty( &iv ) );
59        assert( size( &iv ) == 0 );
[200fcb3]60        sout | size( &iv );
[ea29e73]61}
[00b7cd3]62
63// Local Variables: //
64// tab-width: 4 //
[dc8511c]65// compile-command: "cfa vector.cfa" //
[00b7cd3]66// End: //
Note: See TracBrowser for help on using the repository browser.