#include #include #include #include #include "node.h" /*constructor*/ node* mknode(str) char *str; { node *p = malloc(sizeof(node)); assert(p); p->name = strdup(str); p->next = NULL; return p; } /* helpers */ node* search(root, str) node *root; char *str; { node *p = root; while (p) { if (!strcmp(p->name, str)) { return p; } p = p->next; } return NULL; } node* insert(root, str) /*TODO change to accept double pointer*/ node *root; char * str; { node *p = mknode( str ); p->next = root; return p; }