有効な値のみを受け入れることができるカスタム型を Go で作成するにはどうすればよいですか? たとえば、基になる型が文字列である "Names" という型を作成したいとします。ただし、値「John」、「Rob」、または「Paul」のみを受け入れることができます。それ以外の値はエラーを返します。私が達成したいことを表すためだけに、非常に単純な方法で次のプログラムを作成しました。
http://play.golang.org/p/jzZwALsiXz
このコードを記述する最良の方法は何でしょうか?