作成したツール
今回作成したツールは以下です。
https://github.com/komem3/stout
モチベーション
作成したモチベーションとしては、「構造体を適当に定義したけど json の出力が気になる。」、「この構造体に対する json リクエス トをぱっぱと作成したい」という状況と、僕の ast の練習も含めて作成しました。 思ってた以上に面倒な作業でした…。
使用方法
雑に現在の help コマンドの出力は以下のようになっています。
$ stout -h
usage: stout -path $struct_path [-no-format] $struct_name
options:
-path string
File path of defined struct. (required)
-no-format bool
Not format the output json.
インストール
インストールの仕方は go のツールらしく以下です。
go get github.com/komem3/stout
実例
実際の使い方は以下のように、-path
オプションでファイルパスを指定して、その後に対象のオブジェクトを指定して実行を行ないます。
type PtrSamePkg struct {
Content string
Next string
}
上記のようなオブジェクトを持つ define_test.go
に対して実行する場合は以下のように実行すると json の出力が得られます。
$ stout -path ./define_test.go PtrSamePkg
{
"Content": "string",
"Next": "string"
}
おわりに
このブログを見る人も少ないと思いますが、よかったら試しに使ってみてもらえると嬉しいです。