diff --git a/src/backend/Assembly.zig b/src/backend/Assembly.zig index 914bffb033bfff5923a987cb6e997a23973c3155..89d4d62bf551ecb592e053d51f8387efdeadbdfb 100644 --- a/src/backend/Assembly.zig +++ b/src/backend/Assembly.zig @@ -6,11 +6,19 @@ text: []const u8, const Assembly = @This(); +/// 释放 Assembly 结构体中分配的内存 +/// 需要调用者传入正确的 allocator +/// @param gpa - 泛型分配器,用于释放 data 和 text 字段的内存 pub fn deinit(self: *const Assembly, gpa: Allocator) void { gpa.free(self.data); gpa.free(self.text); } +/// 将程序集数据写入文件 +/// 将 data 和 text 字段的内容按顺序写入文件 +/// @param self - Assembly 实例 +/// @param file - 目标文件句柄 +/// @return 如果写入成功返回 void,如果发生错误返回 error pub fn writeToAllFile(self: Assembly, file: std.fs.File) !void { var vec: [2]std.posix.iovec_const = .{ .{ .base = self.data.ptr, .len = self.data.len },