Я написал следующий код, чтобы помочь преобразовать текстовые значения из полей формы в ожидаемые значения:
protocol StringConvertableValueType {
init?(_ string: String)
}
extension Int: StringConvertableValueType {
}
extension String: StringConvertableValueType {
}
extension Double: StringConvertableValueType {
}
extension Float: StringConvertableValueType {
}
Как вы видите, все эти примитивные типы уже поддерживают один и тот же инициализатор.Однако, проливая на документацию , я не могу найти общий protocol
, который делает это.Хотя мне кажется, что я заново делаю что-то, что уже сделано людьми, которые создали Фонд.
Существует ли уже какое-то protocol
, которое позаботится об этом, или люди, которые построили Foundation
просто удостоверился, что API действительно согласован, но нет протокола, обеспечивающего его соблюдение?