4 OrderNode* allocOrderNode(uint64_t id, Order* order){
5 OrderNode* This = (OrderNode*) ourmalloc(sizeof(OrderNode));
8 This->inEdges = allocHashSetOrderEdge(HT_INITIAL_CAPACITY, HT_DEFAULT_FACTOR);
9 This->outEdges = allocHashSetOrderEdge(HT_INITIAL_CAPACITY, HT_DEFAULT_FACTOR);
13 void deleteOrderNode(OrderNode* node){
14 //NOTE: each node only responsible to delete its outgoing edges and
15 // only delete the set for incoming edges (incoming edges are going
16 // to be deleted by other OrderNodes that they go out from them ...
17 deleteHashSetOrderEdge(node->inEdges);
18 HSIteratorOrderEdge* iterator = iteratorOrderEdge(node->outEdges);
19 while(hasNextOrderEdge(iterator)){
20 OrderEdge* edge = nextOrderEdge(iterator);
21 deleteOrderEdge(edge);
23 deleteIterOrderEdge(iterator);
24 deleteHashSetOrderEdge(node->outEdges);