diff options
-rw-r--r-- | Cargo.toml | 7 | ||||
-rw-r--r-- | src/lib.rs | 13 |
2 files changed, 20 insertions, 0 deletions
@@ -12,7 +12,14 @@ A rust pic17 decoder [dependencies] yaxpeax-arch = { path = "../../yaxpeax-arch" } "termion" = "1.4.0" +"serde" = "*" +"serde_derive" = "*" [[test]] name = "test" path = "test/test.rs" + +[features] +default = [] + +use-serde = [] @@ -1,3 +1,10 @@ +#[cfg(feature="use-serde")] +#[macro_use] extern crate serde_derive; +#[cfg(feature="use-serde")] +extern crate serde; +#[cfg(feature="use-serde")] +use serde::{Serialize, Deserialize}; + extern crate yaxpeax_arch; extern crate termion; @@ -13,8 +20,14 @@ pub struct Instruction { pub operands: [Operand; 2] } +#[cfg(feature="use-serde")] +#[derive(Debug, Serialize, Deserialize)] +pub struct PIC17; + +#[cfg(not(feature="use-serde"))] #[derive(Debug)] pub struct PIC17; + impl Arch for PIC17 { type Address = u16; type Instruction = Instruction; |