github.com/Desuuuu/genqlient@v0.5.3/generate/stringlist.go (about) 1 package generate 2 3 // StringList provides yaml unmarshaler to accept both `string` and `[]string` as a valid type. 4 // Sourced from: 5 // https://github.com/99designs/gqlgen/blob/1a0b19feff6f02d2af6631c9d847bc243f8ede39/codegen/config/config.go#L302-L329 6 type StringList []string 7 8 func (a *StringList) UnmarshalYAML(unmarshal func(interface{}) error) error { 9 var single string 10 err := unmarshal(&single) 11 if err == nil { 12 *a = []string{single} 13 return nil 14 } 15 16 var multi []string 17 err = unmarshal(&multi) 18 if err != nil { 19 return err 20 } 21 22 *a = multi 23 return nil 24 }