Explorar el Código

Update docs

Include updated usage on list functions.
master
TheoryOfNekomata hace 1 año
padre
commit
7765b46941
Se han modificado 1 ficheros con 7 adiciones y 7 borrados
  1. +7
    -7
      src/packages/game/data/README.md

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

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


Cargando…
Cancelar
Guardar