TIL default memberwise initializer for a structure type is considered private if any of the structure’s stored properties are private
After PR to Gnosis for removing memberwise initialisers realised that (qouting The Swift programming language guide):
The default memberwise initializer for a structure type is considered private if any of the structure’s stored properties are private. Likewise, if any of the structure’s stored properties are file private, the initializer is file private. Otherwise, the initializer has an access level of internal.
There’s even swift_republic ruby gem to fix this Swift deficiency. As well as SwiftInitializerGenerator Xcode Source Code Extension.