github.com/thetreep/go-swagger@v0.0.0-20240223100711-35af64f14f01/generator/templates/cli/retrieveflag.gotmpl (about) 1 {{/*util functions to retrieve flags*/}} 2 3 {{ define "primitiveretriever" }} 4 {{- $flagValueVar := printf "%vFlagValue" (camelize .Name) }} 5 {{- $flagNameVar := printf "%vFlagName" (camelize .Name )}} 6 {{- if or (eq .GoType "int64") (eq .GoType "int32") (eq .GoType "string") (eq .GoType "float64") (eq .GoType "float32") (eq .GoType "bool") }} 7 {{ template "flagnamevar" . }} 8 {{ $flagValueVar }}, err := cmd.Flags().Get{{pascalize .GoType}}({{ $flagNameVar }}) 9 if err != nil{ 10 return err, false 11 } 12 {{- /* reciever by convention is m for CLI */}} 13 m.{{ pascalize .Name }} = {{- if .IsNullable }}&{{- end }}{{ $flagValueVar }} 14 {{- else if or (eq .GoType "strfmt.DateTime") (eq .GoType "strfmt.ObjectId") (eq .GoType "strfmt.UUID" ) }} {{/*Get flag value as string, then parse it*/}} 15 {{/*Many of the strfmt types can be added here*/}} 16 {{ template "flagnamevar" . }} 17 {{ $flagValueVar }}Str, err := cmd.Flags().GetString({{ $flagNameVar }}) 18 if err != nil{ 19 return err, false 20 } 21 var {{ $flagValueVar }} {{ .GoType }} 22 if err := {{ $flagValueVar }}.UnmarshalText([]byte({{ $flagValueVar }}Str)); err != nil{ 23 return err, false 24 } 25 m.{{ pascalize .Name }} = {{- if .IsNullable }}&{{- end }}{{ $flagValueVar }} 26 {{- else }} 27 // warning: primitive {{.Name}} {{.GoType }} is not supported by go-swagger cli yet 28 {{- end }} 29 {{ end }} 30 31 {{ define "arrayretriever" }} 32 {{- $flagValueVar := printf "%vFlagValues" (camelize .Name) }} 33 {{- $flagNameVar := printf "%vFlagName" (camelize .Name )}} 34 {{- if or (eq .GoType "[]int64") (eq .GoType "[]int32") (eq .GoType "[]string") (eq .GoType "[]float64") (eq .GoType "[]float32") (eq .GoType "[]bool") }} 35 {{ template "flagnamevar" . }} 36 {{ $flagValueVar }}, err := cmd.Flags().Get{{pascalize .GoType}}Slice({{ $flagNameVar }}) 37 if err != nil{ 38 return err, false 39 } 40 {{- /* reciever by convention is m for CLI */}} 41 m.{{ pascalize .Name }} = {{ $flagValueVar }} 42 {{- else if or (eq .GoType "[]strfmt.DateTime") (eq .GoType "[]strfmt.ObjectId") (eq .GoType "[]strfmt.UUID") }} {{/*Get flag value as string, then parse it*/}} 43 {{ template "flagnamevar" . }} 44 {{ $flagValueVar }}Str, err := cmd.Flags().GetStringSlice({{ $flagNameVar }}) 45 if err != nil{ 46 return err, false 47 } 48 49 {{ $flagValueVar }} := make({{ .GoType }}, len({{ $flagValueVar }}Str)) 50 for i, v := range {{ $flagValueVar }}Str { 51 if err := {{ $flagValueVar }}[i].UnmarshalText([]byte(v)); err != nil{ 52 return err, false 53 } 54 } 55 m.{{ pascalize .Name }} = {{- if .IsNullable }}&{{- end }}{{ $flagValueVar }} 56 {{- else }} 57 // warning: array {{.Name}} {{.GoType }} is not supported by go-swagger cli yet 58 {{- end }} 59 {{ end }}