intuple 0.2.0

Convert structs and enums into tuples (of refs) and back - recursive, ignore fields
Documentation
#![allow(dead_code)]
use intuple::*;

#[derive(Intuple,Debug,Clone)]
struct Unnamed <T> (u32, #[igno] u32, u32, T);

#[derive(Intuple,Debug,Clone)]
struct RecursiveA<T>{a:u32, #[rcsv] b:Unnamed<T>, c:Unnamed<T>}

#[derive(Intuple,Debug)]
struct RecursiveB<T>(u32, #[intuple(rcsv)] RecursiveA<T>, RecursiveA<T>);

#[derive(Intuple)]
struct Nice {a:u32, b:u32, c:u32}
fn main(){

    println!("/* -------------------------------- Recursive ------------------------------- */");
        let mut rcsv_a = RecursiveA::from_tuple((10,(10,20,1u32),Unnamed(10,5,20,1u32)));  
        println!("{:?}",rcsv_a);
        let mut rcsv_b = RecursiveB::from_tuple((33,(11,(11,22,1u32),Unnamed(11,7,22,1u32)),rcsv_a.clone()));
        println!("{:?}",rcsv_b);

        println!("---------------------");

        let ref_a = rcsv_a.as_tuple_ref();
        println!("{:?}",ref_a);
        let ref_b = rcsv_b.as_tuple_ref();
        println!("{:?}",ref_b);
        let ref_a = rcsv_a.as_tuple_ref_mut();
        println!("{:?}",ref_a);
        let ref_b = rcsv_b.as_tuple_ref_mut();
        println!("{:?}",ref_b);        

        println!("---------------------");

        let tup_a = rcsv_a.into_tuple(); 
        println!("{:?}",tup_a);
        let tup_b = rcsv_b.into_tuple();
        println!("{:?}",tup_b);
        
}