#编译时 #目录 #内容 #包含

bin+lib yok

在编译时将目录内容嵌入到你的二进制文件中

8 个版本

0.1.9 2023年11月19日
0.1.8 2023年10月9日

916开发工具

Download history 4/week @ 2024-03-09 2/week @ 2024-03-16 2/week @ 2024-03-30

每月下载量 61

MIT 许可协议

19KB
361

yok

Crates.io Rust license

yok 是一个在编译时将目录内容嵌入到你的二进制文件中的crate。

入门

cargo add yok
#[allow(warnings)]
fn main() {
    use yok::{Dir, Bytes,include_dir};
    const DATA: &[u8] = include_dir();
    let dir: Dir = DATA.into_dir();
    for entry in &dir.data {
        if entry.is_file {
            println!("{}", String::from_utf8_lossy(&entry.contents));
        } else if entry.is_dir {
            println!("{}", entry.path);
        }
    }
    dir.extract("./path");
}

设置 YOK_PATH 环境变量并运行,默认路径为当前目录

# linux,macos
export YOK_PATH="/home/andrew/code/gitlab/test_code/"
# windows cmd
set YOK_PATH="C:\path\to\your\directory"
# windows powershell
$env:YOK_PATH = "C:\path\to\your\directory"

cargo clean
cargo r

无运行时依赖