class SomeClass {
var someProperty: Int {
throw Err("SNAFU")
}
}
上記のようなコードでは、囲み関数が 'throws'と宣言されていないため、迅速なバイナリのエラーは処理されません。スウィフト2で計算されたプロパティがスローされると宣言するにはどうすればよいですか?
「someProperty」が「throws」と宣言するにはどうすればよいですか?
class SomeClass {
var someProperty throws: Int {
}
}
と
class SomeClass {
var someProperty: throws Int {
}
}
と
class SomeClass {
var someProperty: Int throws {
}
}
動作するようには思えません。
ありがとうございます。それはかなり説得力があります。私はこれが私が尋ねた元の問題ではないことを認識していますが、私のシナリオでは、コンテナの型があり、それぞれの要素がハッシュ可能な場合にのみ 'hashValue'を実装します。私はこれを回避するために何ができるのか知っていますか? – math4tots
あなたのコンテナを、 'Hashable'要素だけで動作するジェネリック型にすることは、' Dictionary'キーをHashableにしなければならないのと同じように妥当ですか?そうでなければ、 'Hashable''プロトコル'が 'nil'レスポンスを許さず、要素がハッシュ可能でない場合にハッシュ関数を思いつくために何らかの作業をしなければならないかもしれないと思います。 '投げる'。もし適切であれば 'fatalError()'を使うこともできます。 –
それについて考えると、(型)システムとの戦いがあまりにも進んでいると思います。お手伝いありがとう! – math4tots