Struct semver::VersionReq [−][src]
pub struct VersionReq { /* fields omitted */ }
Expand description
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.
Implementations
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();
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),
}
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);
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
Deserialize this value from the given Serde deserializer. Read more
Performs the conversion.
type Err = ReqParseError
type Err = ReqParseError
The associated error which can be returned from parsing.
Parses a string s
to return a value of this type. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Auto Trait Implementations
impl RefUnwindSafe for VersionReq
impl Send for VersionReq
impl Sync for VersionReq
impl Unpin for VersionReq
impl UnwindSafe for VersionReq
Blanket Implementations
Mutably borrows from an owned value. Read more