Suggestions:
-
Could the same name be used for wrapping and unwrapping?
i.e. init(wrappedValue: T)
and var wrappedValue: T
.
-
Or could there be an unlabelled initializer to wrap, and a no-parameter subscript to unwrap?
i.e. init(_: T)
and subscript() -> T
.