Skip to content

0xIII/optparse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Docs

optparse

License

This project is licensed under GPLv3.

Installation

Add optparse to your Project by downloading it from crates.io or simply adding it to your dependencies:

[dependencies]
optparse = ["0.1.0"]

Documentation

The documentation can be found here.

Usage

// import the crate
use optparse;

// functions/closures must take String as their only parameter
// and not return anything
fn hello(arg: String) {
    println!("Hello {} \\o/", arg);
}
fn main() {
    // create a new parser with a parser description
    let mut parser = optparse::Parser::new("Example Description");

    // register a flag and a corresponding function to be called
    // from the command line
    // register!(flag, command description, function/closure, parser);
    optparse::register!("-welcome", "Example Description", hello, parser);

    // run the parser using the arguments from std::env
    // parse!(arguments, arguments length, parser)
    let args: Vec<String> = std::env::args().collect();
    optparse::parse!(args.clone(), args.len() as u8, parser);
}

Work in Progress

  • aliasing
  • single flag parsing
  • multi parameter closures

You want to contribute? Feel free to leave a comment or create a pull request.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages