Skip to content

Commit b917041

Browse files
committed
remove hand-made Prefix
1 parent 17ad37e commit b917041

File tree

2 files changed

+32
-117
lines changed

2 files changed

+32
-117
lines changed

src/Prefix.zig

Lines changed: 0 additions & 85 deletions
This file was deleted.

src/root.zig

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -364,28 +364,28 @@ pub const PREFIX_BUFSIZE = 6;
364364

365365
/// The prefix for a value.
366366
/// This is the header to be stored before the actual content.
367-
pub const Prefix = @import("./Prefix.zig");
367+
pub const Prefix = std.BoundedArray(u8, PREFIX_BUFSIZE);
368368

369369
/// Generate a string prefix.
370370
pub fn prefixString(len: u32) Prefix {
371371
var result: Prefix = .{};
372372
switch (len) {
373373
0...0b00011111 => {
374-
result.append(0b10100000 | (0b00011111 & @as(u8, @intCast(len))));
374+
result.appendAssumeCapacity(0b10100000 | (0b00011111 & @as(u8, @intCast(len))));
375375
},
376376
0b00011111 + 1...maxInt(u8) => {
377-
result.appendSlice(&.{
377+
result.appendSliceAssumeCapacity(&.{
378378
0xd9,
379379
@truncate(len),
380380
});
381381
},
382382
maxInt(u8) + 1...maxInt(u16) => {
383-
result.append(0xda);
384-
result.writeInt(u16, @truncate(len), .big);
383+
result.appendAssumeCapacity(0xda);
384+
result.writer().writeInt(u16, @truncate(len), .big) catch unreachable;
385385
},
386386
maxInt(u16) + 1...maxInt(u32) => {
387-
result.append(0xdb);
388-
result.writeInt(u32, len, .big);
387+
result.appendAssumeCapacity(0xdb);
388+
result.writer().writeInt(u32, len, .big) catch unreachable;
389389
},
390390
}
391391
return result;
@@ -396,18 +396,18 @@ pub fn prefixBinary(len: u32) Prefix {
396396
var result: Prefix = .{};
397397
switch (len) {
398398
0...maxInt(u8) => {
399-
result.appendSlice(&.{
399+
result.appendSliceAssumeCapacity(&.{
400400
@intFromEnum(ContainerType.bin8),
401401
@as(u8, @truncate(len)),
402402
});
403403
},
404404
maxInt(u8) + 1...maxInt(u16) => {
405-
result.append(@intFromEnum(ContainerType.bin16));
406-
result.writeInt(u16, @truncate(len), .big);
405+
result.appendAssumeCapacity(@intFromEnum(ContainerType.bin16));
406+
result.writer().writeInt(u16, @truncate(len), .big) catch unreachable;
407407
},
408408
maxInt(u16) + 1...maxInt(u32) => {
409-
result.append(@intFromEnum(ContainerType.bin32));
410-
result.writeInt(u32, len, .big);
409+
result.appendAssumeCapacity(@intFromEnum(ContainerType.bin32));
410+
result.writer().writeInt(u32, len, .big) catch unreachable;
411411
},
412412
}
413413
return result;
@@ -418,15 +418,15 @@ pub fn prefixArray(len: u32) Prefix {
418418
var result: Prefix = .{};
419419
switch (len) {
420420
0...0b00001111 => {
421-
result.append(0b10010000 | (0b00001111 & @as(u8, @truncate(len))));
421+
result.appendAssumeCapacity(0b10010000 | (0b00001111 & @as(u8, @truncate(len))));
422422
},
423423
(0b00001111 + 1)...maxInt(u16) => {
424-
result.append(0xdc);
425-
result.writeInt(u16, @truncate(len), .big);
424+
result.appendAssumeCapacity(0xdc);
425+
result.writer().writeInt(u16, @truncate(len), .big) catch unreachable;
426426
},
427427
maxInt(u16) + 1...maxInt(u32) => {
428-
result.append(0xdd);
429-
result.writeInt(u32, len, .big);
428+
result.appendAssumeCapacity(0xdd);
429+
result.writer().writeInt(u32, len, .big) catch unreachable;
430430
},
431431
}
432432
return result;
@@ -441,15 +441,15 @@ pub fn prefixMap(len: u32) Prefix {
441441
var result: Prefix = .{};
442442
switch (len) {
443443
0...0b00001111 => {
444-
result.append(0b10000000 | (0b00001111 & @as(u8, @truncate(len))));
444+
result.appendAssumeCapacity(0b10000000 | (0b00001111 & @as(u8, @truncate(len))));
445445
},
446446
(0b00001111 + 1)...maxInt(u16) => {
447-
result.append(0xde);
448-
result.writeInt(u16, @truncate(len), .big);
447+
result.appendAssumeCapacity(0xde);
448+
result.writer().writeInt(u16, @truncate(len), .big) catch unreachable;
449449
},
450450
maxInt(u16) + 1...maxInt(u32) => {
451-
result.append(0xdf);
452-
result.writeInt(u32, len, .big);
451+
result.appendAssumeCapacity(0xdf);
452+
result.writer().writeInt(u32, len, .big) catch unreachable;
453453
},
454454
}
455455
return result;
@@ -460,22 +460,22 @@ pub fn prefixExt(len: u32, extype: i8) Prefix {
460460
var result: Prefix = .{};
461461
switch (len) {
462462
1, 2, 4, 8, 16 => |b| {
463-
result.append(0xd4 + log2(b));
464-
result.writeInt(i8, extype, .big);
463+
result.appendAssumeCapacity(0xd4 + log2(b));
464+
result.writer().writeInt(i8, extype, .big) catch unreachable;
465465
},
466466
0...maxInt(u8) => {
467-
result.appendSlice(&.{ 0xc7, @truncate(len) });
468-
result.writeInt(i8, extype, .big);
467+
result.appendSliceAssumeCapacity(&.{ 0xc7, @truncate(len) });
468+
result.writer().writeInt(i8, extype, .big) catch unreachable;
469469
},
470470
maxInt(u8) + 1...maxInt(u16) => {
471-
result.append(0xc8);
472-
result.writeInt(u16, @truncate(len), .big);
473-
result.writeInt(i8, extype, .big);
471+
result.appendAssumeCapacity(0xc8);
472+
result.writer().writeInt(u16, @truncate(len), .big) catch unreachable;
473+
result.writer().writeInt(i8, extype, .big) catch unreachable;
474474
},
475475
maxInt(u16) + 1...maxInt(u32) => {
476-
result.append(0xc9);
477-
result.writeInt(u32, @truncate(len), .big);
478-
result.writeInt(i8, extype, .big);
476+
result.appendAssumeCapacity(0xc9);
477+
result.writer().writeInt(u32, @truncate(len), .big) catch unreachable;
478+
result.writer().writeInt(i8, extype, .big) catch unreachable;
479479
},
480480
}
481481
return result;

0 commit comments

Comments
 (0)