Remove Allocator stuff

This commit is contained in:
Krzosa Karol
2022-10-10 10:22:04 +02:00
parent 2f153a7cd3
commit 7aa0ba56b6
14 changed files with 69 additions and 192 deletions

View File

@@ -84,13 +84,13 @@ string_copy(Arena *a, String string){
}
function String
string_fmtv(Allocator *a, const char *str, va_list args1) {
string_fmtv(Arena *a, const char *str, va_list args1) {
va_list args2;
va_copy(args2, args1);
S64 len = stbsp_vsnprintf(0, 0, str, args2);
va_end(args2);
char *result = exp_alloc_array(a, char, len + 1);
char *result = arena_push_array(a, char, len + 1);
stbsp_vsnprintf(result, len + 1, str, args1);
String res = {(U8 *)result, len};
@@ -104,7 +104,7 @@ String result = string_fmtv(alloc, str, args1); \
va_end(args1)
function String
string_fmt(Allocator *a, const char *str, ...) {
string_fmt(Arena *a, const char *str, ...) {
STRING_FMT(a, str, result);
return result;
}
@@ -120,7 +120,7 @@ struct String_Builder_Block{
};
struct String_Builder{
Allocator *allocator;
Arena *allocator;
String_Builder_Block *first_free;
String_Builder_Block *first;
String_Builder_Block *last;
@@ -147,7 +147,7 @@ struct String_Builder{
block = first_free;
first_free = first_free->next;
} else{
block = (String_Builder_Block *)exp_alloc(allocator, sizeof(String_Builder_Block) + size);
block = (String_Builder_Block *)arena_push_size(allocator, sizeof(String_Builder_Block) + size);
}
memory_zero(block, sizeof(String_Builder_Block)+1); // Also clear first byte of character data
block->cap = size;
@@ -203,7 +203,7 @@ struct String_Builder{
};
function String_Builder
string_builder_make(Allocator *a, S64 first_block_size = 4096){
string_builder_make(Arena *a, S64 first_block_size = 4096){
String_Builder sb = {a};
sb.init(first_block_size);
return sb;
@@ -215,7 +215,7 @@ enum String_Builder_Flag{
};
function String
string_flatten(Allocator *a, String_Builder *b, String_Builder_Flag flags = String_Builder_Flag_None){
string_flatten(Arena *a, String_Builder *b, String_Builder_Flag flags = String_Builder_Flag_None){
// @Note(Krzosa): Compute size to allocate
S64 size = 1;
if(is_flag_set(flags, String_Builder_Flag_AddSize)) size += sizeof(size_t);
@@ -224,7 +224,7 @@ string_flatten(Allocator *a, String_Builder *b, String_Builder_Flag flags = Stri
}
String result = {};
result.str = (U8 *)exp_alloc(a, size);
result.str = (U8 *)arena_push_size(a, size);
if(is_flag_set(flags, String_Builder_Flag_AddSize)) {
memory_copy(result.str + result.len, &size, sizeof(S64));
result.len += sizeof(S64);