Lines Matching defs:node
246 /* Append `node` to `list`. */
248 gc_list_append(PyGC_Head *node, PyGC_Head *list)
252 // last <-> node
253 _PyGCHead_SET_PREV(node, last);
254 _PyGCHead_SET_NEXT(last, node);
256 // node <-> list
257 _PyGCHead_SET_NEXT(node, list);
258 list->_gc_prev = (uintptr_t)node;
261 /* Remove `node` from the gc list it's currently in. */
263 gc_list_remove(PyGC_Head *node)
265 PyGC_Head *prev = GC_PREV(node);
266 PyGC_Head *next = GC_NEXT(node);
271 node->_gc_next = 0; /* object is not currently tracked */
274 /* Move `node` from the gc list it's currently in (which is not explicitly
276 * gc_list_remove(node) followed by gc_list_append(node, list).
279 gc_list_move(PyGC_Head *node, PyGC_Head *list)
282 PyGC_Head *from_prev = GC_PREV(node);
283 PyGC_Head *from_next = GC_NEXT(node);
290 _PyGCHead_SET_PREV(node, to_prev);
291 _PyGCHead_SET_NEXT(to_prev, node);
292 list->_gc_prev = (uintptr_t)node;
293 _PyGCHead_SET_NEXT(node, list);