2D Run-and-gun shooter inspired by One Man's Doomsday, Counter-Strike, and Metal Slug.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

36 lines
738 B

  1. #ifndef IZ_LIST_H
  2. #define IZ_LIST_H
  3. #include "../../common/IZ_common.h"
  4. #include "SDL_stdinc.h"
  5. typedef struct IZ_ListNode {
  6. void* value;
  7. struct IZ_ListNode* next;
  8. } IZ_ListNode;
  9. typedef struct {
  10. IZ_ListNode* root;
  11. u64 length;
  12. } IZ_List;
  13. typedef bool IZ_ListFindFilter(IZ_ListNode*, u64);
  14. void IZ_ListInitialize(IZ_List*);
  15. void IZ_ListTeardown(IZ_List*);
  16. IZ_ListNode* IZ_ListAppendNode(IZ_List*, void*);
  17. #define IZ_ListFilterFunctionArgs(X) static X = NULL;
  18. void _IZ_ListDeleteFirstNode(IZ_List*, IZ_ListFindFilter);
  19. #define IZ_ListDeleteFirstNode(X, Y) X = Y; _IZ_ListDeleteFirstNode
  20. IZ_ListNode* _IZ_ListFindFirstNode(IZ_List*, IZ_ListFindFilter);
  21. #define IZ_ListFindFirstNode(X, Y) X = Y; _IZ_ListFindFirstNode
  22. #endif