csd-rs 0.1.2

Canonical Signed Digit Conversion in Rust
Documentation
```rust
use std::env;
use std::str::FromStr;

use csdigit::csd::{to_csd, to_decimal};

fn parse_args(args: &[String]) -> (f64, String, usize) {
    let mut decimal = f64::INFINITY;
    let mut csdstr = String::new();
    let mut places = 4;

    let mut i = 0;
    while i < args.len() {
        match args[i].as_str() {
            "-c" | "--to_csd" => {
                decimal = f64::from_str(&args[i + 1]).unwrap();
                i += 2;
            }
            "-d" | "--to_decimal" => {
                csdstr = args[i + 1].clone();
                i += 2;
            }
            "-p" | "--places" => {
                places = usize::from_str(&args[i + 1]).unwrap();
                i += 2;
            }
            _ => i += 1,
        }
    }

    (decimal, csdstr, places)
}

fn main() {
    let args: Vec<String> = env::args().collect();
    let (decimal, csdstr, places) = parse_args(&args[1..]);

    if decimal != f64::INFINITY {
        let ans = to_csd(decimal, places);
        println!("{}", ans);
    }

    if !csdstr.is_empty() {
        let ans = to_decimal(&csdstr);
        println!("{}", ans);
    }
}
```