Macro rovv::row [−][src]
row!() { /* proc-macro */ }
syntax:
// .view(optics!(a)) // .preview(optics!(b)) // .traverse(optics!(c)) row! { a: A, b: B?, c: C*, .. } // control the mutability row! { a: A, ref b: B, mut c: C, .. } // with some bounds row! { a: A, .. : Debug + Clone + 'a } // pass an optic as the key, e.g. K = Optics![a.b] or even a generic argument row! { [K]: V, .. }
transform
row! { ref a: A, mut b: B, c: C, .. : Trait1 + Trait2 + 'a }
to
impl LensRef<Optic![a], A> + LensMut<Optic![b], B> + Lens<Optic![c], C> + Trait1 + Trait2 + 'a