Changeset f80e0218 for src/tests/vector/vector_int.c
- Timestamp:
- Jun 30, 2016, 4:32:56 PM (10 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- ea29e73
- Parents:
- 1b5c81ed (diff), 84d4d6f (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
-
src/tests/vector/vector_int.c (moved) (moved from src/examples/vector_int.c ) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/tests/vector/vector_int.c
r1b5c81ed rf80e0218 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // vector_int.c -- 7 // vector_int.c -- 8 8 // 9 9 // Author : Richard C. Bilson 10 10 // Created On : Wed May 27 17:56:53 2015 11 // Last Modified By : Peter A. Buhr12 // Last Modified On : Wed May 27 18:38:05 201511 // Last Modified By : Rob Schluntz 12 // Last Modified On : Wed Apr 27 17:27:12 2016 13 13 // Update Count : 3 14 14 // … … 22 22 #define DEFAULT_CAPACITY 20 23 23 24 v ector_int vector_int_allocate() {25 return vector_int_allocate( DEFAULT_CAPACITY );24 void ?{}( vector_int * vec ) { 25 vec { DEFAULT_CAPACITY }; 26 26 } 27 27 28 vector_int vector_int_allocate( int reserve ) { 29 vector_int new_vector; 30 new_vector.last = -1; 31 new_vector.capacity = reserve; 32 new_vector.data = malloc( sizeof( int ) * reserve ); 33 return new_vector; 28 void ?{}( vector_int * vec, int reserve ) { 29 vec->last = -1; 30 vec->capacity = reserve; 31 vec->data = malloc( sizeof( int ) * reserve ); 34 32 } 35 33 36 void vector_int_deallocate( vector_int vec ) { 37 free( vec.data ); 34 void ?{}( vector_int * vec, vector_int other ) { 35 vec->last = other.last; 36 vec->capacity = other.capacity; 37 vec->data = malloc( sizeof( int ) * other.capacity ); 38 for (int i = 0; i < vec->last; i++) { 39 vec->data[i] = other.data[i]; 40 } 41 } 42 43 void ^?{}( vector_int * vec ) { 44 free( vec->data ); 38 45 } 39 46 … … 56 63 // implement bounded_array 57 64 58 lvalue int ?[?]( vector_int vec, int index ) {59 return vec .data[ index ];65 lvalue int ?[?]( vector_int * vec, int index ) { 66 return vec->data[ index ]; 60 67 } 61 68 62 int last( vector_int vec ) {63 return vec .last;69 int last( vector_int * vec ) { 70 return vec->last; 64 71 } 65 72
Note:
See TracChangeset
for help on using the changeset viewer.