aboutsummaryrefslogtreecommitdiff
path: root/sem3/algo/mm2/linked/node.h
diff options
context:
space:
mode:
Diffstat (limited to 'sem3/algo/mm2/linked/node.h')
-rw-r--r--sem3/algo/mm2/linked/node.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/sem3/algo/mm2/linked/node.h b/sem3/algo/mm2/linked/node.h
new file mode 100644
index 0000000..027926b
--- /dev/null
+++ b/sem3/algo/mm2/linked/node.h
@@ -0,0 +1,23 @@
+#ifndef NODE_H
+#define NODE_H
+
+typedef struct node_struct {
+ int val;
+ struct node_struct *next;
+ struct node_struct *prev;
+} node_t;
+
+/** @brief Create a new node after specified node
+ *
+ * @param node Pointer to node where new node should be inserted, can also be NULL
+ * @param val Value to add to new node
+ */
+node_t *node_insert(node_t *node, int val);
+
+/** @brief Pop node from chain and free's the resource
+ *
+ * @return Value in node
+ */
+int node_pop(node_t *node);
+
+#endif