[][src]Crate vin

Vehicle Identification Number parser

Parser and checksum verifier for VIN.

Provides information about region, manufacturer, country of origin, possible years of assembling and checksum validation of given Vehicle Identification Number.

Examples

// Check whether VIN is ok (without checksum validation)
let vin_number = "WP0ZZZ99ZTS392124";
assert!(vin::check_validity(vin_number).is_ok());
// Check VIN with checksum validation
let vin_number = "1M8GDM9AXKP042788";
assert!(vin::verify_checksum(vin_number).is_ok());
// Get VIN information
let vin_number = "wp0zzz998ts392124";
let result = vin::get_info(vin_number).unwrap();
assert_eq!(result.vin, vin_number.to_uppercase());
assert_eq!(result.country, "Germany/West Germany");
assert_eq!(result.manufacturer, "Porsche car");
assert_eq!(result.region, "Europe");
assert!(result.valid_checksum.is_ok());

Structs

ChecksumErrorInfo

Provides information about invalid checksum calculation from the VIN

VIN

Holds parsed information about the vehicle

Enums

VINError

Provides possible errors during VIN parsing

Functions

check_validity

Validates Vehicle Identification Number without computing the checksum (check used symbols and length of the number)

get_info

Return basic information about manufacturer of the vehicle

verify_checksum

Validates Vehicle Identification Number AND validates the checksum