diff options
-rw-r--r-- | object.c | 11 | ||||
-rw-r--r-- | object.h | 3 |
2 files changed, 14 insertions, 0 deletions
@@ -184,6 +184,17 @@ struct object_list *object_list_insert(struct object *item, return new_list; } +void object_list_append(struct object *item, + struct object_list **list_p) +{ + while (*list_p) { + list_p = &((*list_p)->next); + } + *list_p = xmalloc(sizeof(struct object_list)); + (*list_p)->next = NULL; + (*list_p)->item = item; +} + unsigned object_list_length(struct object_list *list) { unsigned ret = 0; @@ -41,6 +41,9 @@ void mark_reachable(struct object *obj, unsigned int mask); struct object_list *object_list_insert(struct object *item, struct object_list **list_p); +void object_list_append(struct object *item, + struct object_list **list_p); + unsigned object_list_length(struct object_list *list); int object_list_contains(struct object_list *list, struct object *obj); |