brids

Crates.iobrids
lib.rsbrids
version0.5.1
sourcesrc
created_at2018-03-28 03:20:26.441852
updated_at2024-10-02 07:52:57.347063
descriptionParse and generate random CPF and CNPJ, Brazil's ID numbers.
homepage
repositoryhttps://gitlab.com/ricvelozo/brids-rs
max_upload_size
id57846
size55,985
Ricardo Silva Veloso (ricvelozo)

documentation

https://docs.rs/brids

README

brids

Parse and generate random CPF and CNPJ, Brazil's ID numbers.

Usage

Add the following to your Cargo.toml:

[dependencies]
brids = "0.5"

Features

All dependencies are optional and disabled by default:

  • rand - enable to generate random numbers
  • serde - enable to (de)serialize numbers

no_std mode

To enable no_std mode, just disable the default features:

[dependencies]
brids = { version = "0.5", default-features = false }

Examples

Parse and format:

use brids::{Cnpj, Cpf};

let maybe_valid = "123.456.789-09".parse::<Cpf>();
assert!(maybe_valid.is_ok()); // Checks validity

let old_format = "123.456.789/09".parse::<Cpf>();
assert!(old_format.is_ok()); // Accepts the old format too

let unformatted = "12345678909".parse::<Cpf>().expect("Invalid CPF");
let formatted = unformatted.to_string(); // Formats
println!("CPF: {unformatted}"); // Formats too

// Generate random CNPJ and CPF numbers
println!("Random CNPJ number: {}", Cnpj::generate());
println!("Random CPF number: {}", Cpf::generate());

License

brids is licensed under either of the following, at your option:

Commit count: 98

cargo fmt