#![feature(unboxed_closures, fn_traits)] /// Base trait pub trait OpticsTrait {} /// Wrapper type #[derive(Clone, Copy)] pub struct Optics(pub(crate) T); impl OpticsTrait for Optics {} mod combinations; mod fns; pub mod lenses; pub mod prisms;