getset 0.1.6

Getset, we're ready to go! A procedural macro for generating the most basic getters and setters on fields.
Documentation
use getset::{CopyGetters, Getters, MutGetters, Setters, WithSetters};

#[test]
fn test_unary_tuple() {
    #[derive(Setters, Getters, MutGetters, WithSetters)]
    struct UnaryTuple(#[getset(set, get, get_mut, set_with)] i32);

    let mut tup = UnaryTuple(42);
    assert_eq!(tup.get(), &42);
    assert_eq!(tup.get_mut(), &mut 42);
    tup.set(43);
    assert_eq!(tup.get(), &43);
    tup = tup.set_with(44);
    assert_eq!(tup.get(), &44);

    #[derive(CopyGetters)]
    struct CopyUnaryTuple(#[getset(get_copy)] i32);

    let tup = CopyUnaryTuple(42);
    assert_eq!(tup.get(), 42);
}

#[test]
fn test_unary_tuple_with_attrs() {
    #[derive(Setters, Getters, MutGetters, WithSetters)]
    #[getset(set, get, get_mut, set_with)]
    struct UnaryTuple(i32);

    let mut tup = UnaryTuple(42);
    assert_eq!(tup.get(), &42);
    assert_eq!(tup.get_mut(), &mut 42);
    tup.set(43);
    assert_eq!(tup.get(), &43);
    tup = tup.set_with(44);
    assert_eq!(tup.get(), &44);

    #[derive(CopyGetters)]
    #[getset(get_copy)]
    struct CopyUnaryTuple(i32);

    let tup = CopyUnaryTuple(42);
    assert_eq!(tup.get(), 42);
}