Avatar
自分が管理していないライブラリ内でextensionを使ってString型に生えてるライブラリ独自のプロパティを利用者側のコードの変更でコンパイルが通らないようにする(もしくはワーニングを出す)ことは可能でしょうか? 自分が試したこととしては
  • SwiftLintのカスタムルール(自分が遭遇したケースは正規表現で絞り切れるものだったので今回はこれを利用しました)
  • プロパティをオーバーライドして@available()でunavailableにする
    • 大元のライブラリの方のプロパティが利用されてしまった
  • プロパティをオーバーライドして@available()でdeprecatedにする
    • 結局コンパイルはできてしまう
    これ以外により良い方法があれば教えていただきたいです。
(edited)