😊

Goのコレクションライブラリclipperhouse genをgo generateで扱う

2022/12/19に公開

概要

clipperhouse/genは構造体の配列などの操作をアノテーションコメントを入れるだけでメソッドを生成してくれるライブラリです。

https://github.com/clipperhouse/gen

使い方としては、以下のように構造体にアノテーションコメントを入れます。

// +gen * slice
type User struct {
  ID string
}

コメントを入れたら、上記の構造体があるディレクトリ階層で、

$ gen

とするだけです。

go generateでgenするには?

go generateで生成を行うには、以下のようにします。

//go:generate gen
// +gen * slice
type User struct {
  ID string
}

上記のようにgenerateのコメントを入れたら、ルートで

$ go generate ./...

とするとディレクトリ階層を移動せず、genが出来ます。

Discussion