2020-07-22 00:14:28 -04:00
|
|
|
package api
|
|
|
|
|
|
|
|
|
|
func getOpts(opt ...Option) options {
|
|
|
|
|
opts := getDefaultOptions()
|
|
|
|
|
for _, o := range opt {
|
|
|
|
|
o(&opts)
|
|
|
|
|
}
|
|
|
|
|
return opts
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Option - how Options are passed as arguments
|
|
|
|
|
type Option func(*options)
|
|
|
|
|
|
|
|
|
|
// options = how options are represented
|
2021-01-08 17:30:41 -05:00
|
|
|
type options struct {
|
|
|
|
|
withSkipCurlOuptut bool
|
|
|
|
|
}
|
2020-07-22 00:14:28 -04:00
|
|
|
|
|
|
|
|
func getDefaultOptions() options {
|
2020-09-08 13:27:51 -07:00
|
|
|
return options{}
|
2020-09-01 12:31:54 -04:00
|
|
|
}
|
2021-01-08 17:30:41 -05:00
|
|
|
|
|
|
|
|
// WithSkipCurlOutput tells the API to not use the current call for cURL output.
|
|
|
|
|
// Useful for when we need to look up versions.
|
|
|
|
|
func WithSkipCurlOutput(skip bool) Option {
|
|
|
|
|
return func(o *options) {
|
|
|
|
|
o.withSkipCurlOuptut = true
|
|
|
|
|
}
|
|
|
|
|
}
|