terraform/vendor/github.com/apparentlymart/go-versions/versions/set_extremes.go

50 lines
792 B
Go
Raw Normal View History

package versions
// All is an infinite set containing all possible versions.
var All Set
// None is a finite set containing no versions.
var None Set
type setExtreme bool
func (s setExtreme) Has(v Version) bool {
return bool(s)
}
func (s setExtreme) AllRequested() Set {
// The extreme sets request nothing.
return None
}
func (s setExtreme) GoString() string {
switch bool(s) {
case true:
return "versions.All"
case false:
return "versions.None"
default:
panic("strange new boolean value")
}
}
var _ setFinite = setExtreme(false)
func (s setExtreme) isFinite() bool {
// Only None is finite
return !bool(s)
}
func (s setExtreme) listVersions() List {
return nil
}
func init() {
All = Set{
setI: setExtreme(true),
}
None = Set{
setI: setExtreme(false),
}
}