macho_assembler/helpers/macho_writer.rs
1use crate::types::MachoProgram;
2use gaia_binary::{BinaryWriter, Fixed, LittleEndian};
3use gaia_types::GaiaError;
4use std::io::Write;
5
6/// Mach-O 写入器 trait
7///
8/// 定义了写入 Mach-O 文件的通用接口。
9pub trait MachoWriter<W: Write> {
10 /// 写入 Mach-O 程序
11 fn write_program(&mut self, program: &MachoProgram) -> Result<(), GaiaError>;
12
13 /// 获取内部写入器的引用
14 fn writer(&mut self) -> &mut BinaryWriter<W, Fixed<LittleEndian>>;
15}