以下の例では、拡張関数に宣言されていないパラメータ型があります。 String
。ハァッ?それはどのように宣言されていないタイプですか?これは拡張機能ですので、あなたが、あるColumnType
(内文字列は宣言されていない型ですか?
import UIKit
enum ColumnType: String {
case StringArray
, IntArray
, DoubleArray
, String = "text"
, Int = "int"
, Double = "double"
, Unknown
}
extension ColumnType {
func fromRaw(rawValue: String) -> ColumnType {
if let valueType = ColumnType(rawValue: rawValue) {
return valueType
}
switch rawValue {
case "text", "Text":
return .String
case "int", "Int":
return .Int
case "double", "Double":
return .Double
default:
return .Unknown
}
}
}
合法的な質問にはなぜダウン投票 –