authorgravatar for leecannon@leecannon.xyzLee Cannon <leecannon@leecannon.xyz> 2021-12-02 15:39:25+00:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-12-02 11:56:32-08:00
logfb9fcf5632468b2aa8af73f4e3269a01535076f5
tree7f744cf7155647485155db00539dbe056c6205f6
parent14b532ec8596d7f84b76127f1b858271f010126f

allocator: Move vtable into gen struct


1 files changed, 9 insertions(+), 9 deletions(-)

lib/std/mem/Allocator.zig+9-9
...@@ -67,30 +67,30 @@ pub fn init(...@@ -67,30 +67,30 @@ pub fn init(
67 const alignment = ptr_info.Pointer.alignment;67 const alignment = ptr_info.Pointer.alignment;
6868
69 const gen = struct {69 const gen = struct {
70 fn alloc(ptr: *c_void, len: usize, ptr_align: u29, len_align: u29, ret_addr: usize) Error![]u8 {70 fn allocImpl(ptr: *c_void, len: usize, ptr_align: u29, len_align: u29, ret_addr: usize) Error![]u8 {
71 const self = @ptrCast(Ptr, @alignCast(alignment, ptr));71 const self = @ptrCast(Ptr, @alignCast(alignment, ptr));
72 return @call(.{ .modifier = .always_inline }, allocFn, .{ self, len, ptr_align, len_align, ret_addr });72 return @call(.{ .modifier = .always_inline }, allocFn, .{ self, len, ptr_align, len_align, ret_addr });
73 }73 }
74 fn resize(ptr: *c_void, buf: []u8, buf_align: u29, new_len: usize, len_align: u29, ret_addr: usize) ?usize {74 fn resizeImpl(ptr: *c_void, buf: []u8, buf_align: u29, new_len: usize, len_align: u29, ret_addr: usize) ?usize {
75 assert(new_len != 0);75 assert(new_len != 0);
76 const self = @ptrCast(Ptr, @alignCast(alignment, ptr));76 const self = @ptrCast(Ptr, @alignCast(alignment, ptr));
77 return @call(.{ .modifier = .always_inline }, resizeFn, .{ self, buf, buf_align, new_len, len_align, ret_addr });77 return @call(.{ .modifier = .always_inline }, resizeFn, .{ self, buf, buf_align, new_len, len_align, ret_addr });
78 }78 }
79 fn free(ptr: *c_void, buf: []u8, buf_align: u29, ret_addr: usize) void {79 fn freeImpl(ptr: *c_void, buf: []u8, buf_align: u29, ret_addr: usize) void {
80 const self = @ptrCast(Ptr, @alignCast(alignment, ptr));80 const self = @ptrCast(Ptr, @alignCast(alignment, ptr));
81 @call(.{ .modifier = .always_inline }, freeFn, .{ self, buf, buf_align, ret_addr });81 @call(.{ .modifier = .always_inline }, freeFn, .{ self, buf, buf_align, ret_addr });
82 }82 }
83 };
8483
85 const vtable = VTable{84 const vtable = VTable{
86 .alloc = gen.alloc,85 .alloc = allocImpl,
87 .resize = gen.resize,86 .resize = resizeImpl,
88 .free = gen.free,87 .free = freeImpl,
88 };
89 };89 };
9090
91 return .{91 return .{
92 .ptr = pointer,92 .ptr = pointer,
93 .vtable = &vtable,93 .vtable = &gen.vtable,
94 };94 };
95}95}
9696