ydke_parser/
lib.rs

1//! A crate for parsing and generating YGOPro deck URLs in the YDKE format.
2//! 
3//! # Example
4//! 
5//! ```
6//! use ydke_parser::{Deck, parse_url, to_url};
7//! 
8//! // Create a deck
9//! let deck = Deck {
10//!     main: vec![26077387, 37351133],
11//!     extra: vec![63288574],
12//!     side: vec![37351133],
13//! };
14//!
15//! let url1 = "ydke://y+iNAd3uOQI=!/rTFAw==!3e45Ag==!";
16//! // Convert deck to URL
17//! let url2 = to_url(&deck);
18//! 
19//! // Parse the URL back into a deck
20//! let parsed_deck1 = parse_url(&url1).unwrap();
21//! let parsed_deck2 = parse_url(&url2).unwrap();
22//! assert_eq!(deck, parsed_deck1);
23//! assert_eq!(deck, parsed_deck2);
24//! ```
25
26mod error;
27mod deck;
28mod conversion;
29mod utils;
30
31pub use error::YdkeError;
32pub use deck::Deck;
33pub use conversion::{parse_url, parse_urls, to_url, to_urls};
34pub use utils::extract_urls;