1use discid::DiscId;
2
3fn main() {
4 let toc = "1 11 242457 150 44942 61305 72755 96360 130485 147315 164275 190702 205412 220437";
5 let result = DiscId::parse(toc);
6
7 match result {
8 Ok(disc) => print_disc_info(disc),
9 Err(e) => {
10 eprintln!("{}", e);
11 std::process::exit(1);
12 }
13 }
14}
15
16fn print_disc_info(disc: DiscId) {
17 println!("DiscID : {}", disc.id());
18 println!("FreeDB ID : {}", disc.freedb_id());
19 println!("TOC : {}", disc.toc_string());
20 println!("First track : {}", disc.first_track_num());
21 println!("Last track : {}", disc.last_track_num());
22 println!("Sectors : {}\n", disc.sectors());
23
24 for track in disc.tracks() {
25 println!("Track #{}", track.number);
26 println!(" Offset : {}", track.offset);
27 println!(" Sectors : {}", track.sectors);
28 }
29
30 println!("\nSubmit via {}", disc.submission_url());
31}