Crate brids[−][src]
Parse and generate random CPF/ICN and CNPJ, Brazil's ID numbers.
Usage
First, add the following to your Cargo.toml
:
[dependencies]
brids = "0.3"
Next, add this to your crate root:
extern crate brids;
Dependencies
The rand crate is an optional dependency enabled by default. To disable, use like this:
[dependencies]
brids = { version = "0.3", default-features = false }
Examples
Parse and format:
extern crate brids; use brids::Cpf; use std::io::{stdin, stdout, Write}; fn main() { print!("Input a CPF/ICN number: "); stdout().flush().ok(); let mut input = String::with_capacity(14); stdin().read_line(&mut input).ok(); match input.trim().parse::<Cpf>() { Ok(cpf) => println!("{} is a valid number.", cpf), Err(err) => println!("Error: {}", err), } }
Generate random CNPJ and CPF/ICN numbers:
extern crate brids; use brids::{Cnpj, Cpf}; fn main() { println!("Random CNPJ number: {}", Cnpj::generate()); println!("Random CPF/ICN number: {}", Cpf::generate()); }
Using a different generator:
extern crate brids; extern crate rand; use brids::{Cnpj, Cpf}; use rand::{ChaChaRng, Rng}; fn main() { let mut rng = ChaChaRng::new_unseeded(); println!("Random CNPJ number: {}", rng.gen::<Cnpj>()); println!("Random CPF/ICN number: {}", rng.gen::<Cpf>()); }
Structs
Cnpj |
A valid CNPJ number. Parsing recognizes numbers with or without separators (dot, minus, slash, and space). |
Cpf |
A valid CPF/ICN number. Parsing recognizes numbers with or without separators (dot, minus, slash, and space). |
Enums
ParseCnpjError |
An error which can be returned when parsing an CNPJ number. |
ParseCpfError |
An error which can be returned when parsing an CPF/ICN number. |
Type Definitions
Icn |