1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-19 13:42:17 +03:00

add new list type simple_oid_string_list to fe-utils/simple_list

This type contains both an oid and a string.

This will be used in forthcoming changes to pg_restore.

Author: Andrew Dunstan <andrew@dunslane.net>
This commit is contained in:
Andrew Dunstan
2025-03-28 18:10:24 -04:00
parent c1da728106
commit 2b69afbe50
3 changed files with 59 additions and 0 deletions

View File

@@ -192,3 +192,44 @@ simple_ptr_list_destroy(SimplePtrList *list)
cell = next;
}
}
/*
* Add to an oid_string list
*/
void
simple_oid_string_list_append(SimpleOidStringList *list, Oid oid, const char *str)
{
SimpleOidStringListCell *cell;
cell = (SimpleOidStringListCell *)
pg_malloc(offsetof(SimpleOidStringListCell, str) + strlen(str) + 1);
cell->next = NULL;
cell->oid = oid;
strcpy(cell->str, str);
if (list->tail)
list->tail->next = cell;
else
list->head = cell;
list->tail = cell;
}
/*
* Destroy an oid_string list
*/
void
simple_oid_string_list_destroy(SimpleOidStringList *list)
{
SimpleOidStringListCell *cell;
cell = list->head;
while (cell != NULL)
{
SimpleOidStringListCell *next;
next = cell->next;
pg_free(cell);
cell = next;
}
}