#arguments-parser #cli #argument #parser #arg

bin+lib cleasy

让Rust中的命令行界面变得简单

1个稳定版本

1.0.0 2022年4月17日

#972命令行界面


用于 3 crates

MIT 协议

13KB
151

CLEASY

让Rust中的命令行界面变得简单。

GitHub CI

关于

最近我一直在用Rust编写大量的命令行应用程序。我对手动解析程序接收到的选项感到厌倦,所以我决定编写一个库来让我的生活变得更简单。我知道 clap 也是一个选择,但我不喜欢戏剧。我不太想现在就陷入 clap 的戏剧。

特性

  • 速度极快。
  • 易于使用,没有戏剧。
  • 提供多种内置选项。
  • 提供内置的 -h--help 标志。
  • 提供内置的 -v--version 标志。

安装

要在您的Rust项目中使用 Cleasy,请将以下行添加到项目的 Cargo.toml 文件的 [dependencies] 部分

cleasy = { git = "https://github.com/iamtheblackunicorn/cleasy", version = "1.0.0" }

要将库导入到您的项目代码中,请使用以下行

use cleasy::App;

有关如何使用该库的详细信息,请参阅以下部分。

示例

以下示例演示了如何使用 Cleasy 的所有API。

/*
CLEASY by Alexander Abraham,
a.k.a. "Angeldust Duke" a.k.a. "The Black Unicorn".
Licensed under the MIT license.
*/

use cleasy::App;

fn main(){

    /// Name, version, and author data.
    let name: String = String::from("Test App");
    let version: String = String::from("1.0.0");
    let author: String = String::from("Alexander Abraham");

    /// Instantiating the "App" struct with the required
    /// data.
    let mut my_app: App = App::new(name, version, author);

    /// Adding a greeting without data. Note the use of "false".
    my_app.add_arg("greet".to_string(), "generic greeting for the user".to_string(), "false".to_string());

    /// Adding a greeting with data. Note the use of "true".
    my_app.add_arg("cgreet".to_string(), "custom greeting for the user".to_string(), "true".to_string());

    if my_app.version_is() == true {
        println!("{}", my_app.version());
    }
    else if my_app.help_is() == true {
        println!("{}", my_app.help());
    }
    else if my_app.arg_was_used("greet".to_string()) == true {
        println!("Hello World!");
    }
    else if my_app.arg_was_used("cgreet".to_string()) == true {
        let arg_data: String = my_app.get_arg_data("cgreet".to_string());
        println!("Hello, {}!", arg_data);
    }
    else {
        println!("{}", my_app.help());
    }
}

变更日志

版本 1.0.0

  • 初始发布。
  • 上传到GitHub。

注意

  • Cleasy 由Alexander Abraham(又称 "The Black Unicorn")编写
  • 在MIT协议下授权。

无运行时依赖