102 iter.base.remove = false; |
102 iter.base.remove = false; |
103 iter.base.mutating = true; |
103 iter.base.mutating = true; |
104 |
104 |
105 return iter; |
105 return iter; |
106 } |
106 } |
|
107 |
|
108 CxIterator cxIterator( |
|
109 void const *array, |
|
110 size_t elem_size, |
|
111 size_t elem_count |
|
112 ) { |
|
113 CxMutIterator iter = cxMutIterator((void*)array, elem_size, elem_count, false); |
|
114 iter.base.mutating = false; |
|
115 |
|
116 // we know the iterators share the same memory layout |
|
117 CxIterator ret; |
|
118 memcpy(&ret, &iter, sizeof(CxIterator)); |
|
119 return ret; |
|
120 } |