Avatar
Kishikawa Katsumi 8/7/2019 9:29 AM
IBPプレフィクスが付いたObjective-Cの実装が、内部でOSバージョンをチェックして、本来の型のインスタンスを返すとか?
そのように考えています。それはたぶん可能だと思っていて、 さらに可能ならコールサイトを変えずに実現したいです。
9:30 AM
まあPrefixつきの呼び出しが違和感があまりなければ、上のように処理しつつ(iOS 13以上なら標準APIにディスパッチする) (edited)
9:32 AM
12以下をDropできる段階でIBPを全部置換して消してしまうだけで完了なので、まあ悪くはない感じではあります。 ただ、サンプルコードとかをそのままコピー&ペーストで使えないので、なかなか不便だと思うんですよね。
9:32 AM
呼び出し元の記述が変わってしまうと。
9:33 AM
開発時だけなんかしたらソースコードの互換性がある、とかでも良いかも。
9:35 AM
相手がUIKitじゃなかったらObjCは別名にしつつSwiftから見えるクラス名を標準に合わせてimportでなんとかする、みたいなのもできそうなんですけどUIKitだからimportしないわけにはいかないし。。。。