Crate isbn

Crate isbn 

Source
Expand description

A library for handling International Standard Book Number, or ISBNs.

§Examples

use isbn::{Isbn10, Isbn13};

let isbn_10 = Isbn10::new([8, 9, 6, 6, 2, 6, 1, 2, 6, 4]).unwrap();
assert_eq!(isbn_10.hyphenate().unwrap().as_str(), "89-6626-126-4");
assert_eq!(isbn_10.registration_group(), Ok("Korea, Republic"));
assert_eq!("89-6626-126-4".parse(), Ok(isbn_10));

let isbn_13 = Isbn13::new([9, 7, 8, 1, 4, 9, 2, 0, 6, 7, 6, 6, 5]).unwrap();
assert_eq!(isbn_13.hyphenate().unwrap().as_str(), "978-1-4920-6766-5");
assert_eq!(isbn_13.registration_group(), Ok("English language"));
assert_eq!("978-1-4920-6766-5".parse(), Ok(isbn_13));

Re-exports§

pub use range::IsbnRange;runtime-ranges

Modules§

rangeruntime-ranges

Structs§

Isbn10
10-digit ISBN format.
Isbn13
13-digit ISBN format.

Enums§

Isbn
An International Standard Book Number, either ISBN10 or ISBN13.
IsbnError
An error which can be returned when parsing an ISBN.
IsbnRef
An International Standard Book Number, either ISBN10 or ISBN13.

Type Aliases§

IsbnResult