vault: github.com/hashicorp/vault/vendor/github.com/hashicorp/go-version Index | Files

package version

import "github.com/hashicorp/vault/vendor/github.com/hashicorp/go-version"

Index

Package Files

constraint.go version.go version_collection.go

Constants

const (
    VersionRegexpRaw string = `v?([0-9]+(\.[0-9]+)*?)` +
        `(-([0-9]+[0-9A-Za-z\-~]*(\.[0-9A-Za-z\-~]+)*)|(-?([A-Za-z\-~]+[0-9A-Za-z\-~]*(\.[0-9A-Za-z\-~]+)*)))?` +
        `(\+([0-9A-Za-z\-~]+(\.[0-9A-Za-z\-~]+)*))?` +
        `?`

    // SemverRegexpRaw requires a separator between version and prerelease
    SemverRegexpRaw string = `v?([0-9]+(\.[0-9]+)*?)` +
        `(-([0-9]+[0-9A-Za-z\-~]*(\.[0-9A-Za-z\-~]+)*)|(-([A-Za-z\-~]+[0-9A-Za-z\-~]*(\.[0-9A-Za-z\-~]+)*)))?` +
        `(\+([0-9A-Za-z\-~]+(\.[0-9A-Za-z\-~]+)*))?` +
        `?`
)

The raw regular expression string used for testing the validity of a version.

type Collection Uses

type Collection []*Version

Collection is a type that implements the sort.Interface interface so that versions can be sorted.

func (Collection) Len Uses

func (v Collection) Len() int

func (Collection) Less Uses

func (v Collection) Less(i, j int) bool

func (Collection) Swap Uses

func (v Collection) Swap(i, j int)

type Constraint Uses

type Constraint struct {
    // contains filtered or unexported fields
}

Constraint represents a single constraint for a version, such as ">= 1.0".

func (*Constraint) Check Uses

func (c *Constraint) Check(v *Version) bool

Check tests if a constraint is validated by the given version.

func (*Constraint) String Uses

func (c *Constraint) String() string

type Constraints Uses

type Constraints []*Constraint

Constraints is a slice of constraints. We make a custom type so that we can add methods to it.

func NewConstraint Uses

func NewConstraint(v string) (Constraints, error)

NewConstraint will parse one or more constraints from the given constraint string. The string must be a comma-separated list of constraints.

func (Constraints) Check Uses

func (cs Constraints) Check(v *Version) bool

Check tests if a version satisfies all the constraints.

func (Constraints) String Uses

func (cs Constraints) String() string

Returns the string format of the constraints

type Version Uses

type Version struct {
    // contains filtered or unexported fields
}

Version represents a single version.

func Must Uses

func Must(v *Version, err error) *Version

Must is a helper that wraps a call to a function returning (*Version, error) and panics if error is non-nil.

func NewSemver Uses

func NewSemver(v string) (*Version, error)

NewSemver parses the given version and returns a new Version that adheres strictly to SemVer specs https://semver.org/

func NewVersion Uses

func NewVersion(v string) (*Version, error)

NewVersion parses the given version and returns a new Version.

func (*Version) Compare Uses

func (v *Version) Compare(other *Version) int

Compare compares this version to another version. This returns -1, 0, or 1 if this version is smaller, equal, or larger than the other version, respectively.

If you want boolean results, use the LessThan, Equal, GreaterThan, GreaterThanOrEqual or LessThanOrEqual methods.

func (*Version) Equal Uses

func (v *Version) Equal(o *Version) bool

Equal tests if two versions are equal.

func (*Version) GreaterThan Uses

func (v *Version) GreaterThan(o *Version) bool

GreaterThan tests if this version is greater than another version.

func (*Version) GreaterThanOrEqual Uses

func (v *Version) GreaterThanOrEqual(o *Version) bool

GreaterThanOrEqualTo tests if this version is greater than or equal to another version.

func (*Version) LessThan Uses

func (v *Version) LessThan(o *Version) bool

LessThan tests if this version is less than another version.

func (*Version) LessThanOrEqual Uses

func (v *Version) LessThanOrEqual(o *Version) bool

LessThanOrEqualTo tests if this version is less than or equal to another version.

func (*Version) Metadata Uses

func (v *Version) Metadata() string

Metadata returns any metadata that was part of the version string.

Metadata is anything that comes after the "+" in the version. For example, with "1.2.3+beta", the metadata is "beta".

func (*Version) Original Uses

func (v *Version) Original() string

Original returns the original parsed version as-is, including any potential whitespace, `v` prefix, etc.

func (*Version) Prerelease Uses

func (v *Version) Prerelease() string

Prerelease returns any prerelease data that is part of the version, or blank if there is no prerelease data.

Prerelease information is anything that comes after the "-" in the version (but before any metadata). For example, with "1.2.3-beta", the prerelease information is "beta".

func (*Version) Segments Uses

func (v *Version) Segments() []int

Segments returns the numeric segments of the version as a slice of ints.

This excludes any metadata or pre-release information. For example, for a version "1.2.3-beta", segments will return a slice of 1, 2, 3.

func (*Version) Segments64 Uses

func (v *Version) Segments64() []int64

Segments64 returns the numeric segments of the version as a slice of int64s.

This excludes any metadata or pre-release information. For example, for a version "1.2.3-beta", segments will return a slice of 1, 2, 3.

func (*Version) String Uses

func (v *Version) String() string

String returns the full version string included pre-release and metadata information.

This value is rebuilt according to the parsed segments and other information. Therefore, ambiguities in the version string such as prefixed zeroes (1.04.0 => 1.4.0), `v` prefix (v1.0.0 => 1.0.0), and missing parts (1.0 => 1.0.0) will be made into a canonicalized form as shown in the parenthesized examples.

Package version imports 6 packages (graph). Updated 2019-07-23. Refresh now. Tools for package owners.