Skip to content

Commit 9ab700b

Browse files
committed
std: use std.ArrayList(u8) instead of std.Buffer in src-self-hosted/translate_c.zig
1 parent 0398c26 commit 9ab700b

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src-self-hosted/translate_c.zig

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ const Scope = struct {
209209

210210
pub const Context = struct {
211211
tree: *ast.Tree,
212-
source_buffer: *std.Buffer,
212+
source_buffer: *std.ArrayList(u8),
213213
err: Error,
214214
source_manager: *ZigClangSourceManager,
215215
decl_table: DeclTable,
@@ -296,7 +296,8 @@ pub fn translate(
296296
.eof_token = undefined,
297297
};
298298

299-
var source_buffer = try std.Buffer.initSize(arena, 0);
299+
var source_buffer = std.ArrayList(u8).init(arena);
300+
errdefer source_buffer.deinit();
300301

301302
var context = Context{
302303
.tree = tree,
@@ -4291,7 +4292,7 @@ fn makeRestorePoint(c: *Context) RestorePoint {
42914292
return RestorePoint{
42924293
.c = c,
42934294
.token_index = c.tree.tokens.len,
4294-
.src_buf_index = c.source_buffer.len(),
4295+
.src_buf_index = c.source_buffer.len,
42954296
};
42964297
}
42974298

@@ -4754,14 +4755,14 @@ fn appendToken(c: *Context, token_id: Token.Id, bytes: []const u8) !ast.TokenInd
47544755
fn appendTokenFmt(c: *Context, token_id: Token.Id, comptime format: []const u8, args: var) !ast.TokenIndex {
47554756
const S = struct {
47564757
fn callback(context: *Context, bytes: []const u8) error{OutOfMemory}!void {
4757-
return context.source_buffer.append(bytes);
4758+
return context.source_buffer.appendSlice(bytes);
47584759
}
47594760
};
4760-
const start_index = c.source_buffer.len();
4761+
const start_index = c.source_buffer.len;
47614762
errdefer c.source_buffer.shrink(start_index);
47624763

47634764
try std.fmt.format(c, error{OutOfMemory}, S.callback, format, args);
4764-
const end_index = c.source_buffer.len();
4765+
const end_index = c.source_buffer.len;
47654766
const token_index = c.tree.tokens.len;
47664767
const new_token = try c.tree.tokens.addOne();
47674768
errdefer c.tree.tokens.shrink(token_index);
@@ -4771,7 +4772,7 @@ fn appendTokenFmt(c: *Context, token_id: Token.Id, comptime format: []const u8,
47714772
.start = start_index,
47724773
.end = end_index,
47734774
};
4774-
try c.source_buffer.appendByte(' ');
4775+
try c.source_buffer.append(' ');
47754776

47764777
return token_index;
47774778
}
@@ -5789,7 +5790,7 @@ fn parseCPrefixOpExpr(c: *Context, it: *CTokenList.Iterator, source: []const u8,
57895790

57905791
fn tokenSlice(c: *Context, token: ast.TokenIndex) []u8 {
57915792
const tok = c.tree.tokens.at(token);
5792-
const slice = c.source_buffer.toSlice()[tok.start..tok.end];
5793+
const slice = c.source_buffer.span()[tok.start..tok.end];
57935794
return if (mem.startsWith(u8, slice, "@\""))
57945795
slice[2 .. slice.len - 1]
57955796
else

0 commit comments

Comments
 (0)