はじめに Goには、gorenameという識別子をリネームするリファクタリングツールがあります。 以下のようにgo getすることで使用することができます。 また、「gorenameをライブラリとして使う」とう記事にも書いたとおり、gorenameはライブラリとしても利用することができます。 この記事では、gorenameほどは高機能では無いものの、ローカル変数のリネームをgo/typesパッケージの提供する機能で実装してみます。 なお、この記事を書いた時点のGoの最新バージョンは1.7.4です。 指定した位置にある識別子を取得する gorenameもそうですが、多くのリファクタリングツールでは、「何」を対象にリファクタリングを行うか、以下の2種類の方法で指定することが多いでしょう。 ずばり対象とするものを指定(この場合だと対象となる識別子) 対象となるもののソースコード上の位置 ソースコ