#include "dat.h" #include "fns.h" void nodetbl_add(NodeTable* self, NodeRef* node) { int i; NodeRef* n; if (self && node) { i = (int)(node->id%256); n = self->data[i]; if (n && n->next) { n = n->next; } if (n) { n->next = node; } else { n = node; } } } void nodetbl_del(NodeTable* self, uvlong id) { NodeRef* n; NodeRef* nprev; if (self) { for(int i = 0; i <= 255; i++) { n = self->data[i]; while (n && n->id != id && n->next) { nprev = n; n = n->next; } if (n->id == id) { if (nprev) { nprev->next = n->next; } free(n); break; } } } }