Crates.io | creditcard |
lib.rs | creditcard |
version | |
source | src |
created_at | 2025-01-07 03:13:16.695347 |
updated_at | 2025-01-07 03:13:16.695347 |
description | Zero-dependency credit card parser and validator. |
homepage | |
repository | https://github.com/matteopolak/creditcard |
max_upload_size | |
id | 1506638 |
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` |
size | 0 |
Zero-dependency credit card number validation and parsing for Rust.
use creditcard::{CreditCard, CreditCardKind};
let card = "4111111111111111".parse::<CreditCard>().unwrap();
assert_eq!(card.kind(), CreditCardKind::Visa);
assert_eq!(card.pan(), 4111111111111111);
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 |