extern crate drylib;
use drylib::*;
fn main() {
pubstruct!{
#[derive(Debug)]
Tuple(usize, i32, u32) };
let tuple = Tuple(0, 1, 2); println!("{tuple:?}");
pubstruct!{
#[derive(Debug)]
TupleT<T>(T, i32, u32)
};
let tuple_t = TupleT(0, 1, 2);
println!("{tuple_t:?}");
pubstruct!{
#[derive(Debug)]
TupleLT<'a>(&'a i32, usize, &'a i32)
};
let tuple_lt = TupleLT(&0, 1, &2);
println!("{tuple_lt:?}");
pubstruct!{
#[derive(Debug)]
TupleLTTU<'a, 'b, T, U>(&'a T, U, &'b i32)
};
let tuple_lttu = TupleLTTU(&"hello", vec![1, 2, 3], &2);
println!("{tuple_lttu:?}");
pubstruct!{
#[derive(Debug)]
Structure {
digit: usize, another_digit: i32, } }
let structure = Structure { digit: 0, another_digit: 1 };
println!("{structure:?}");
pubstruct!{
#[derive(Debug)]
StructureT<T> {
greet: T,
digit: i32,
}
}
let structure_t = StructureT { greet: "hello", digit: 1 };
println!("{structure_t:?}");
pubstruct!{
#[derive(Debug)]
StructureLT<'a> {
greet: &'a str,
digit: i32,
}
}
let structure_lt = StructureLT { greet: "hello again", digit: 1 };
println!("{structure_lt:?}");
pubstruct!{
#[derive(Debug)]
StructureLTTU<'a, 'b, T, U> {
greet: &'a T,
array: &'b Vec<U>,
}
}
let structure_lttu = StructureLTTU { greet: &"hello again", array: &vec![1, 2, 3] };
println!("{structure_lttu:?}"); }