4个版本

0.2.1 2024年4月26日
0.2.0 2024年3月27日
0.1.1 2024年2月13日
0.1.0 2023年3月11日

1579文件系统

Download history 120/week @ 2024-05-02 32/week @ 2024-05-09 49/week @ 2024-05-16 38/week @ 2024-05-23 42/week @ 2024-05-30 48/week @ 2024-06-06 25/week @ 2024-06-13 40/week @ 2024-06-20 39/week @ 2024-06-27 23/week @ 2024-07-04 36/week @ 2024-07-11 20/week @ 2024-07-18 35/week @ 2024-07-25 46/week @ 2024-08-01 22/week @ 2024-08-08 26/week @ 2024-08-15

131 每月下载量
cargo-files 中使用

MIT/Apache

18KB
350

cargo-files

Latest version crates.io downloads Build Status Apache/MIT2.0 License

列出cargo crate中所有源文件的工具。

动机

在我编写cargo-derivefmt的时候,我希望有一种简单的方法来获取cargo crate中的源文件。我没有找到现有的crate能够做这个,所以我写了这个。

这个库仍在开发中。可能存在许多问题和不受支持的情况。

命令行界面

对于最终用户,我们提供了一个命令行界面,可以列出crate中的所有源文件。

安装

cargo install (crates.io)

cargo install cargo-files --locked

cargo install (master)

cargo install --git https://github.com/dcchut/cargo-files --locked

使用方法

cargo files

示例输出

> cargo files
/home/dcchut/cargo-files/cargo-files/src/main.rs
/home/dcchut/cargo-files/cargo-files-core/src/lib.rs
/home/dcchut/cargo-files/cargo-files-core/src/parser.rs
/home/dcchut/cargo-files/cargo-files-core/tests/tests.rs
/home/dcchut/cargo-files/cargo-files-test/src/lib.rs

开发者

cargo-files-core crate包含cargo-files背后的逻辑,可以被关注源文件的其他应用程序重用。目前API非常简单,但任何改进建议都欢迎!

最小示例

use cargo_files_core::{get_targets, get_target_files, Error};

fn main() -> Result<(), Error> {
    // Each target (e.g. bin/lib) in your workspace will contribute a target.
    let targets = get_targets(None)?;
    for target in targets {
        // Get all the files related to a specific target.
        let files = get_target_files(&target)?;
        for file in files {
            println!("{}", file.display());
        }
    }
    
    Ok(())
}

依赖项

~1–2MB
~40K SLoC