Ver código fonte

Update docs

Include updated usage on list functions.
master
TheoryOfNekomata 1 ano atrás
pai
commit
7765b46941
1 arquivos alterados com 7 adições e 7 exclusões
  1. +7
    -7
      src/packages/game/data/README.md

+ 7
- 7
src/packages/game/data/README.md Ver arquivo

@@ -4,7 +4,7 @@ Fundamental functions for various data structures used in the project.

## `list`

A singly-linked list is used on certain parts of the game, such as the memory pool's entries of currently allocated game
A doubly-linked list is used on certain parts of the game, such as the memory pool's entries of currently allocated game
objects.

Here is how to properly use a list:
@@ -26,22 +26,22 @@ int main() {
// lists should accept any type of value (void*), so the implementor is free to use whatever type they want
int node1_value = 1;
IZ_ListAppendNode(&list, &node1_value);
IZ_ListAppendNode(&list, &node1_value, NULL);
int node2_value = 2;
IZ_ListAppendNode(&list, &node2_value);
IZ_ListAppendNode(&list, &node2_value, NULL);
// pass predicate functions for finding nodes
ListNode* find_node;
find_node = IZ_ListFindFirstNode(&list, &FindNodeWithValueTwo);
ListNode* find_node = NULL;
IZ_ListFindFirstNode(&list, &FindNodeWithValueTwo, &find_node);
if (find_node != NULL) {
printf("Found node with value 2!\n");
}
ListNode* delete_node;
delete_node = IZ_ListFindFirstNode(&list, &FindNodeWithValueOne);
IZ_ListFindFirstNode(&list, &FindNodeWithValueOne, &delete_node);
// deletions are done only on one node at a time
IZ_ListDeleteNode(&list, delete_node);
IZ_ListDeleteNode(delete_node);
// teardown takes care of de-allocating nodes and making sure data cannot be accessed sensibly anymore.
IZ_ListTeardown(&list);


Carregando…
Cancelar
Salvar