🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ast::CompressorImplSystem类 参考

#include <CompressorImplSystem.hpp>

+ 类 ast::CompressorImplSystem 继承关系图:

Public 成员函数

virtual errc_t compress (StringView source, StringView target, StringView curdir={}) const override
 
virtual bool isSupported () const override
 
virtual bool canCompress (StringView source, StringView target) const override
 
- Public 成员函数 继承自 ast::CompressorInterface

静态 Public 成员函数

static CompressorImplSystemInstance ()
 

详细描述

系统命令后端

通过调用系统安装的命令行工具进行压缩:

  • tar → .tar, .tar.gz, .tar.bz2, .tar.xz
  • zip → .zip
  • 7z → .7z

成员函数说明

◆ canCompress()

bool ast::CompressorImplSystem::canCompress ( StringView source,
StringView target ) const
overridevirtual

检查该压缩实现是否能处理指定源文件/目录并生成目标格式

默认返回 true;子类可重写以检查目标扩展名或源文件类型

参数
source待压缩的源文件或目录路径
target压缩目标路径(用于判断目标格式)
返回
true 如果能处理,false 否则

重载 ast::CompressorInterface .

◆ compress()

errc_t ast::CompressorImplSystem::compress ( StringView source,
StringView target,
StringView curdir = {} ) const
overridevirtual

压缩文件或目录

参数
source要压缩的文件或目录的路径
target压缩目标路径
curdir工作目录,source 在归档中的路径相对于此目录计算 (空串=从 source 父目录推断;等于 source=归档根为".")
返回
errc_t 错误码

实现了 ast::CompressorInterface.

◆ isSupported()

bool ast::CompressorImplSystem::isSupported ( ) const
overridevirtual

检查该压缩实现是否在当前环境中可用

例如:基于 Shell COM 的实现检查是否是 Windows, 基于系统命令的实现检查是否安装了对应的命令行工具

返回
true 如果可用,false 否则

重载 ast::CompressorInterface .


该类的文档由以下文件生成: