#[macro_use]
extern crate serde_derive;
pub mod de;
pub mod ser;
#[derive(Debug)]
pub enum Error {
Decode(&'static str),
Encode(&'static str),
}
pub fn decode(adc: &str) -> Result<de::DeserializedDeck, Error> {
de::decode(adc)
}
pub fn encode(deck: &mut de::DeserializedDeck) -> Result<String, Error> {
ser::encode(deck)
}
#[cfg(test)]
mod tests {
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
#[test]
fn decode_to_encode() {
let mut deck = crate::decode(
"ADCJWkTZX05uwGDCRV4XQGy3QGLmqUBg4GQJgGLGgO7AaABR3JlZW4vQmxhY2sgRXhhbXBsZQ__",
)
.unwrap();
let string = crate::ser::encode(&mut deck).unwrap();
assert_eq!(
string.as_str(),
"ADCJWkTZX05uwGDCRV4XQGy3QGLmqUBg4GQJgGLGgO7AaABR3JlZW4vQmxhY2sgRXhhbXBsZQ__"
);
}
}