Cleanup iterators, remove logging, add message queue

This commit is contained in:
Krzosa Karol
2023-01-01 19:18:42 +01:00
parent 3de813212a
commit ec66f02e46
8 changed files with 214 additions and 217 deletions

View File

@@ -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)
};