summaryrefslogtreecommitdiff
path: root/src/NormData.zig
diff options
context:
space:
mode:
authorGravatar Jose Colon Rodriguez2024-04-02 13:22:37 -0400
committerGravatar Jose Colon Rodriguez2024-04-02 13:22:37 -0400
commitcc8d110f834d112a230024122fddfcc6e0a67759 (patch)
treea69b7ef8fa81f82b9ce9a16ce489b696d237e284 /src/NormData.zig
parentUpdated README with zig fetch (diff)
downloadzg-cc8d110f834d112a230024122fddfcc6e0a67759.tar.gz
zg-cc8d110f834d112a230024122fddfcc6e0a67759.tar.xz
zg-cc8d110f834d112a230024122fddfcc6e0a67759.zip
NormData init now takes pointer to uninitialized Self to avoid stack copy issues.
Diffstat (limited to 'src/NormData.zig')
-rw-r--r--src/NormData.zig5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/NormData.zig b/src/NormData.zig
index 7ffe679..15cc401 100644
--- a/src/NormData.zig
+++ b/src/NormData.zig
@@ -16,8 +16,7 @@ normp_data: NormPropsData = undefined,
16 16
17const Self = @This(); 17const Self = @This();
18 18
19pub fn init(allocator: std.mem.Allocator) !Self { 19pub fn init(self: *Self, allocator: std.mem.Allocator) !void {
20 var self = Self{};
21 self.canon_data = try CanonData.init(allocator); 20 self.canon_data = try CanonData.init(allocator);
22 errdefer self.canon_data.deinit(); 21 errdefer self.canon_data.deinit();
23 self.ccc_data = try CccData.init(allocator); 22 self.ccc_data = try CccData.init(allocator);
@@ -27,8 +26,6 @@ pub fn init(allocator: std.mem.Allocator) !Self {
27 self.hangul_data = try HangulData.init(allocator); 26 self.hangul_data = try HangulData.init(allocator);
28 errdefer self.hangul_data.deinit(); 27 errdefer self.hangul_data.deinit();
29 self.normp_data = try NormPropsData.init(allocator); 28 self.normp_data = try NormPropsData.init(allocator);
30
31 return self;
32} 29}
33 30
34pub fn deinit(self: *Self) void { 31pub fn deinit(self: *Self) void {