1. ホーム
  2. swift

Swift タイプの表現は、より多くの文脈がないと曖昧である。

2022-02-17 11:45:54
<パス

背景


Swift 5.0では、サードパーティライブラリのSDWebimageを使用すると、このエラーが発生します。

Type of expression is ambiguous without more context

エラー解析


私は長年の開発でSDWebimageを使用しているため、以下のコードを書きました。


iconImageView?.sd_setImage(with:url, placeholderImage: UIImage.init(named: "mine_user_icon"), options:nil, completed: nil)



すると、上記のようなエラーが報告されます。

直訳すると、このような式には、結果を推測するための文脈がもうないのです。

これは、パラメータの不足を表しています。

エラーの解決


足りないパラメータがわかったので、オプションが設定されている必要があると思い、この設定をクリックして見て、必要なところだけ書きました。

引用


このエラーは、XcodeがSwiftのエラーをチェックする際に発生するもので、SDが書いたチェックアサーションではないため、より文脈に沿った推論を行わないものは、このエラーを報告する。

回避策としては、コードに何か条件が抜けていないか確認することです。