netパッケージのソースコードを読んでいると、ファイル内で使われているsyscallパッケージの記述に打ち消し線が引かれていた。
他にも、この画像でいうとCancel
にも打ち消し線が引かれている。
まあ、なんとなくどういうときに打ち消し線が引かれるのか予想はできるが、軽く調べてみた。
どういうときに打ち消し線が引かれるかというと、そのパッケージやメソッド、型や変数がdeprecated(非推奨)のとき。
Goでは、Deprecated:
という修飾を含んだコメントを記述することで、対象が非推奨であることを伝えることができる1。もちろん、この記述は開発者による目視のときのサポートだけではない。静的解析ツールのstaticcheck
には、この記述がある関数や型などを呼び出していると警告してくれる機能がある2。
この規則を利用して、Go本体、標準・準標準パッケージのソースコードが管理されているGoogle Open Source
内では、そういった非推奨になっているコードの記述が一瞬で分かる様になっているという仕組み。便利。
GitHubで管理されているソースコードは、こういったことは上記で説明したようなLint
を実行してみないとわかりにくい。GitHubにもこういった痒い所に手が届く機能があると良いな。