Skip to content

Instantly share code, notes, and snippets.

@cpl
Created November 23, 2020 14:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cpl/4224ff9818055dcd4ff6522a3db8d139 to your computer and use it in GitHub Desktop.
Save cpl/4224ff9818055dcd4ff6522a3db8d139 to your computer and use it in GitHub Desktop.
Go Enums Quick Example
package example
type AnimalType uint8
const (
AnimalTypeUnknown AnimalType = iota
AnimalTypeDog
AnimalTypeCat
AnimalTypeRabbit
AnimalTypeSnake
AnimalTypeJellyfish
)
var animalTypeStringMap = map[AnimalType]string{
AnimalTypeUnknown: "unknown",
AnimalTypeDog: "dog",
AnimalTypeCat: "cat",
AnimalTypeRabbit: "rabbit",
AnimalTypeSnake: "snake",
AnimalTypeJellyfish: "jellyfish",
}
func (a AnimalType) String() string {
str, ok := animalTypeStringMap[a]
if ok {
return str
}
return ""
}
// func (a AnimalType) Scan ...
// func (a AnimalType) Marshal / Unmarshal
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment