#はじめに
警告の表示方法についての備忘録です。
#方法1
Swift4.2までは#warning("")などが使えなかったので、お決まりのスクリプトです。
使用方法はBuildPhaseのRunScriptに以下を追加。
TAGS="TODO:|FIXME:"
ERRORTAG="ERROR:"
find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($TAGS).*\$|($ERRORTAG).*\$" | perl -p -e "s/($TAGS)/ warning: \$1/" | perl -p -e "s/($ERRORTAG)/ error: \$1/"
####使い方
// TODO:
// FIXME:
// ERROR:
を使用した場合に警告およびエラーがビルド実行時に表示されるようになります。
####結果

#方法2
エディタプレースホルダーを使用する強引なやり方です。
ビルドが通らないので使い方は限られますし、本来の使い方ではないですね。
予測変換で出したコードの引数とかに出てくるこれですね。

生成方法は至って簡単。
以下のように文字を<#
#>
で挟めばエディタプレースホルダーとして変換されます。
####使い方
<#hogehoge#>
####結果

#方法3
Swift4.2以降で使えるようになったやつです。
####使い方
#warning("hogehoge")
#error("fugafuga")
####結果

#まとめ
個人的にはまだ方法1のやり方8割で、2割で方法3のやり方でやっています。
まず方法2はやらないですね。
警告内容も該当箇所いかないとわからないですし。
(なぜ書いたんだって話になりますが...)
簡易的な備忘録でしたが、ご覧いただきありがとうございました。
ひっそりとブログも始めました。
kazyblog