diff --git a/src/main.c b/src/main.c index 430e662..73d2edf 100644 --- a/src/main.c +++ b/src/main.c @@ -7,6 +7,15 @@ #define ANSI_COLOR_RED "\x1b[31m" #define ANSI_COLOR_RESET "\x1b[0m" +/** + * @brief Assert a condition + * @details If the condition is false, print an error message + * and exit the program + * + * @param condition The condition to assert + * @param message The message to print if the condition is false + * @return 0 if the condition is true + */ int assert(bool condition, const char *message) { if (!condition) { printf(ANSI_COLOR_RED "Assertion failed: %s\n" ANSI_COLOR_RESET, message); diff --git a/src/tree.h b/src/tree.h index ef90695..c89a820 100644 --- a/src/tree.h +++ b/src/tree.h @@ -5,20 +5,37 @@ #include #include -// A regular node with a left and right branch +/** + * @brief A node in a binary tree + * @details A node in a binary tree has some data + * and can have a left and right branch + */ struct Node { + /** @brief The data of the node */ int data; - struct Node *left, *right; + + /** @see Node */ + struct Node *left; + + /** @see Node */ + struct Node *right; }; typedef struct Node Node; -// Represents a tree with a root node +/** @brief Represents a tree with a root node */ struct Tree { + /** @brief The root node of the tree */ Node *root; }; typedef struct Tree Tree; -// Insert some data into the tree +/** + * @brief Insert some data into the tree + * + * @param tree + * @param data + * @return * Insert + */ int tree_insert(Tree *tree, int data); // Remove some data from the tree