move str8 list pop to the base layer

This commit is contained in:
Nikita Smith committed 2026-01-22 13:29:45 -08:00
1 parent 29a7dfedac
commit 7627ccf84e
4 files changed
+16 -17

No files matched your search

+15
View File
@@ -1122,6 +1122,21 @@ str8_list_push_frontf(Arena *arena, String8List *list, char *fmt, ...)
return result;
}
internal String8Node*
str8_list_pop_front(String8List *list)
{
String8Node *node = 0;
if(list->node_count)
{
node = list->first;
Assert(list->total_size >= list->first->string.size);
list->node_count -= 1;
list->total_size -= list->first->string.size;
SLLQueuePop(list->first, list->last);
}
return node;
}
internal String8List
str8_list_copy(Arena *arena, String8List *list)
{
+1
View File
@@ -267,6 +267,7 @@ internal void str8_list_concat_in_place(String8List *list, String8List *
internal String8Node* str8_list_push_aligner(Arena *arena, String8List *list, U64 min, U64 align);
internal String8Node* str8_list_pushf(Arena *arena, String8List *list, char *fmt, ...);
internal String8Node* str8_list_push_frontf(Arena *arena, String8List *list, char *fmt, ...);
internal String8Node* str8_list_pop_front(String8List *list);
internal String8List str8_list_copy(Arena *arena, String8List *list);
#define str8_list_first(list) ((list)->first ? (list)->first->string : str8_zero())