creditcard

Crates.iocreditcard
lib.rscreditcard
version
sourcesrc
created_at2025-01-07 03:13:16.695347
updated_at2025-01-07 03:13:16.695347
descriptionZero-dependency credit card parser and validator.
homepage
repositoryhttps://github.com/matteopolak/creditcard
max_upload_size
id1506638
Cargo.toml error:TOML parse error at line 18, column 1 | 18 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
Matthew Polak (matteopolak)

documentation

README

Credit Card

Zero-dependency credit card number validation and parsing for Rust.

Basic example

use creditcard::{CreditCard, CreditCardKind};

let card = "4111111111111111".parse::<CreditCard>().unwrap();

assert_eq!(card.kind(), CreditCardKind::Visa);
assert_eq!(card.pan(), 4111111111111111);

Benchmarks

See the benches directory for basic micro-benchmarks.

benchmark creditcard card-validate
too short 27.740ns 280.77ns
too long 23.787ns 280.06ns
invalid 18.113ns 279.38ns
valid 28.651ns 139.38ns
Commit count: 2

cargo fmt