Struct stdcli::prelude::VersionReq [] [src]

pub struct VersionReq { /* fields omitted */ }

A VersionReq is a struct containing a list of predicates that can apply to ranges of version numbers. Matching operations can then be done with the VersionReq against a particular version to see if it satisfies some or all of the constraints.

Methods

impl VersionReq
[src]

[src]

any() is a factory method which creates a VersionReq with no constraints. In other words, any version will match against it.

Examples

use semver::VersionReq;

let anything = VersionReq::any();

[src]

parse() is the main constructor of a VersionReq. It takes a string like "^1.2.3" and turns it into a VersionReq that matches that particular constraint.

A Result is returned which contains a ReqParseError if there was a problem parsing the VersionReq.

Examples

use semver::VersionReq;

let version = VersionReq::parse("=1.2.3");
let version = VersionReq::parse(">1.2.3");
let version = VersionReq::parse("<1.2.3");
let version = VersionReq::parse("~1.2.3");
let version = VersionReq::parse("^1.2.3");
let version = VersionReq::parse("1.2.3"); // synonym for ^1.2.3
let version = VersionReq::parse("<=1.2.3");
let version = VersionReq::parse(">=1.2.3");

This example demonstrates error handling, and will panic.

use semver::VersionReq;

let version = match VersionReq::parse("not a version") {
    Ok(version) => version,
    Err(e) => panic!("There was a problem parsing: {}", e),
}

[src]

exact() is a factory method which creates a VersionReq with one exact constraint.

Examples

use semver::VersionReq;
use semver::Version;

let version = Version { major: 1, minor: 1, patch: 1, pre: vec![], build: vec![] };
let exact = VersionReq::exact(&version);

[src]

matches() matches a given Version against this VersionReq.

Examples

use semver::VersionReq;
use semver::Version;

let version = Version { major: 1, minor: 1, patch: 1, pre: vec![], build: vec![] };
let exact = VersionReq::exact(&version);

assert!(exact.matches(&version));

Trait Implementations

impl Ord for VersionReq
[src]

[src]

impl Hash for VersionReq
[src]

[src]

impl Clone for VersionReq
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Eq for VersionReq
[src]

impl From<VersionReq> for VersionReq
[src]

[src]

Performs the conversion.

impl PartialEq<VersionReq> for VersionReq
[src]

[src]

[src]

impl FromStr for VersionReq
[src]

impl Debug for VersionReq
[src]

[src]

Formats the value using the given formatter.

impl Display for VersionReq
[src]

[src]

Formats the value using the given formatter. Read more

impl PartialOrd<VersionReq> for VersionReq
[src]

[src]

[src]

[src]

[src]

[src]