{"TranslateFileGetTrans": "翻译文件，返回 Translator 对象（调用者负责 dump_ir），None 失败", "ensure_dir": "递归创建目录（类似 mkdir -p），目录已存在视为成功\n\n    Args:\n        path: 目录路径（支持 / 或 \\ 分隔符）\n\n    Returns:\n        0 成功（包括目录已存在），非 0 失败\n    ", "write_ir_to_file": "将 IR 缓冲区写入 .ll 文件\n\n    Args:\n        ir_buf: IR 文本缓冲区\n        ir_len: IR 文本长度\n        output_dir: 输出目录（temp 或 output）\n        module_name: 模块名（如 \"main\"）\n\n    Returns:\n        0 成功，非 0 失败\n    ", "compile_ll_to_obj": "调用 llc 将 .ll 编译为 .obj\n\n    Args:\n        ir_path: .ll 文件路径\n        output_dir: 输出目录\n        module_name: 模块名（用于生成 .obj 文件名）\n        cc_cmd: 编译器命令（如 \"llc\"）\n        cc_flags: 编译器参数（如 \"-filetype=obj -relocation-model=pic\"）\n\n    Returns:\n        0 成功，非 0 失败\n    ", "collect_obj_files": "扫描 includes_binary_dir 目录，收集所有 .obj 文件路径到 out_buf\n\n    Args:\n        includes_binary_dir: includes.binary 目录路径\n        out_buf: 输出缓冲区（用于存放空格分隔的 .obj 文件路径）\n        out_size: 输出缓冲区大小\n\n    Returns:\n        写入的字节数（不含 null 终止符），0 表示无文件或错误\n    ", "link_obj_to_exe": "调用 clang++ 链接 .obj 为 .exe\n\n    Args:\n        output_dir: 输出目录（包含 .obj 文件）\n        module_name: 模块名\n        linker_cmd: 链接器命令（如 \"clang++\"）\n        linker_flags: 链接器参数\n        linker_output: 输出文件名（如 \"test.exe\"）\n        includes_binary_dir: includes.binary 目录路径（链接时附加预编译 .obj）\n\n    Returns:\n        0 成功，非 0 失败\n    ", "compile_module_to_obj": "编译 IR 到 .obj（不链接）\n\n    Args:\n        ir_buf: LLVM IR 文本缓冲区\n        ir_len: IR 文本长度\n        temp_dir: 临时目录\n        output_dir: 输出目录\n        module_name: 模块名（SHA1）\n        cc_cmd: 编译器命令\n        cc_flags: 编译器参数\n\n    Returns:\n        0 成功，非 0 失败\n    ", "link_objs_to_exe": "链接多个 .obj 文件为 .exe\n\n    Args:\n        obj_paths: 空格分隔的 .obj 文件完整路径字符串\n        obj_paths_len: obj_paths 长度\n        linker_cmd: 链接器命令（如 \"clang++\"）\n        linker_flags: 链接器参数\n        linker_output: 输出文件完整路径\n        includes_binary_dir: includes.binary 目录路径（链接时附加预编译 .obj）\n\n    Returns:\n        0 成功，非 0 失败\n    ", "run_pipeline": "执行完整编译管线\n\n    Args:\n        ir_buf: LLVM IR 文本缓冲区\n        ir_len: IR 文本长度\n        temp_dir: 临时目录\n        output_dir: 输出目录\n        module_name: 模块名\n        cc_cmd: 编译器命令\n        cc_flags: 编译器参数\n        linker_cmd: 链接器命令\n        linker_flags: 链接器参数\n        linker_output: 输出文件名\n        includes_binary_dir: includes.binary 目录路径（链接时附加预编译 .obj）\n\n    Returns:\n        BuildResult 对象\n    "}