タプルの単項演算子を定義できないようです。次の例を検討してください。
@prefix func - (tuple: (Int, Int)) -> (Int, Int) {
return (-tuple.0, -tuple.1)
}
let t = (1, 2)
-t
そして、エラーが発生します: could not find an overload for '-' that accept the供給された引数。これは予期される動作ですか?
二項演算子が正常に機能することは注目に値します。たとえば==
、タプルを定義でき、期待どおりに機能します。