Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Requirements ¶
type Requirements map[addrs.Provider]VersionConstraints
Requirements gathers together requirements for many different providers into a single data structure, as a convenient way to represent the full set of requirements for a particular configuration or state or both.
If an entry in a Requirements has a zero-length VersionConstraints then that indicates that the provider is required but that any version is acceptable. That's different than a provider being absent from the map altogether, which means that it is not required at all.
func (Requirements) Merge ¶
func (r Requirements) Merge(other Requirements) Requirements
Merge takes the requirements in the receiever and the requirements in the other given value and produces a new set of requirements that combines all of the requirements of both.
The resulting requirements will permit only selections that both of the source requirements would've allowed.
type Version ¶
Version represents a particular single version of a provider.
var UnspecifiedVersion Version = versions.Unspecified
UnspecifiedVersion is the zero value of Version, representing the absense of a version number.
func ParseVersion ¶
ParseVersion parses a "semver"-style version string into a Version value, which is the version syntax we use for provider versions.
type VersionConstraints ¶
type VersionConstraints = constraints.IntersectionSpec
VersionConstraints represents a set of version constraints, which can define the membership of a VersionSet by exclusion.
func ParseVersionConstraints ¶
func ParseVersionConstraints(str string) (VersionConstraints, error)
ParseVersionConstraints parses a "Ruby-like" version constraint string into a VersionConstraints value.