Cleanup iterators, remove logging, add message queue
This commit is contained in:
@@ -102,19 +102,6 @@ struct Array{
|
||||
force_inline T *begin() { return data; }
|
||||
force_inline T *end () { return data + len; }
|
||||
force_inline T &operator[](S64 i){ assert(i >= 0 && i < cap); return data[i]; }
|
||||
|
||||
struct Array_Iter{
|
||||
Array<T> *array;
|
||||
S64 i;
|
||||
T *item;
|
||||
|
||||
force_inline void next(){ i+=1; item = &array->data[i]; }
|
||||
force_inline B32 is_valid(){ return i < array->len; }
|
||||
};
|
||||
|
||||
force_inline Array_Iter iter(){ return {this, 0, begin()};}
|
||||
#define For_It_Named(array, it) for(auto it = (array).iter(); it.is_valid(); it.next())
|
||||
#define For_It(array) For_It_Named(array, it)
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user