StringBuilder_removeFromEnd
This commit is contained in:
parent
9e9b43afb4
commit
7c2809aae2
@ -4,12 +4,21 @@ void StringBuilder_free(StringBuilder* b){
|
|||||||
free(b->buffer.data);
|
free(b->buffer.data);
|
||||||
}
|
}
|
||||||
|
|
||||||
str StringBuilder_build(StringBuilder* b){
|
str StringBuilder_getStr(StringBuilder* b){
|
||||||
List_u8_push(&b->buffer, '\0');
|
List_u8_push(&b->buffer, '\0');
|
||||||
str result = str_construct((char*)b->buffer.data, b->buffer.len - 1, true);
|
str result = str_construct((char*)b->buffer.data, b->buffer.len - 1, true);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void StringBuilder_removeFromEnd(StringBuilder* b, u32 count){
|
||||||
|
if(count < b->buffer.len){
|
||||||
|
b->buffer.len -= count;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
b->buffer.len = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void StringBuilder_append_char(StringBuilder* b, char c){
|
void StringBuilder_append_char(StringBuilder* b, char c){
|
||||||
List_u8_push(&b->buffer, c);
|
List_u8_push(&b->buffer, c);
|
||||||
|
|||||||
@ -1,9 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#if __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "../collections/List.h"
|
#include "../collections/List.h"
|
||||||
#include "str.h"
|
#include "str.h"
|
||||||
|
|
||||||
@ -16,6 +12,7 @@ static inline StringBuilder StringBuilder_construct(u32 initial_size) {
|
|||||||
}
|
}
|
||||||
void StringBuilder_free(StringBuilder* b);
|
void StringBuilder_free(StringBuilder* b);
|
||||||
|
|
||||||
|
/// @param count set to -1 to clear StringBuilder
|
||||||
void StringBuilder_removeFromEnd(StringBuilder* b, u32 count);
|
void StringBuilder_removeFromEnd(StringBuilder* b, u32 count);
|
||||||
void StringBuilder_append_char(StringBuilder* b, char c);
|
void StringBuilder_append_char(StringBuilder* b, char c);
|
||||||
void StringBuilder_append_cstr(StringBuilder* b, char* s);
|
void StringBuilder_append_cstr(StringBuilder* b, char* s);
|
||||||
@ -26,7 +23,3 @@ void StringBuilder_append_f64(StringBuilder* b, f64 a);
|
|||||||
|
|
||||||
// adds '\0' to the buffer and returns pointer to buffer content
|
// adds '\0' to the buffer and returns pointer to buffer content
|
||||||
str StringBuilder_getStr(StringBuilder* b);
|
str StringBuilder_getStr(StringBuilder* b);
|
||||||
|
|
||||||
#if __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
Loading…
Reference in New Issue
Block a user