blob: 8ef25433ed1306635b1b6f2745731e9f222df3ae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#include "./gc.h"
#include "./strings.h"
ShedString shed__runtime__string_alloc(ShedStringLength length) {
return shed__runtime__gc_alloc(sizeof(struct ShedString) + length, 0);
}
ShedString shed__runtime__string_add(ShedString left, ShedString right) {
ShedStringLength length = left->length + right->length;
ShedString string = shed__runtime__string_alloc(length);
string->length = length;
for(ShedStringLength i = 0; i < left->length; i++) {
string->data[i] = left->data[i];
}
for(ShedStringLength i = 0; i < right->length; i++) {
string->data[left->length + i] = right->data[i];
}
return string;
}
|