Function semver_parser::range::parse[][src]

pub fn parse<'input>(input: &'input str) -> Result<VersionReq, Error<'input>>

Function for parsing VersionReq from string.

Function for parsing VersionReq from string to Result<VersionReq, String>, where Err will contain error message in case of failed parsing.

Examples

Simple single-predicate VersionReq:

use semver_parser::range;

let r = range::parse("1.0.0")?;

assert_eq!(range::Predicate {
        op: range::Op::Compatible,
        major: 1,
        minor: Some(0),
        patch: Some(0),
        pre: Vec::new(),
    },
    r.predicates[0]
);

Multiple predicates in VersionReq:

use semver_parser::range;

let r = range::parse("> 0.0.9, <= 2.5.3")?;

assert_eq!(range::Predicate {
        op: range::Op::Gt,
        major: 0,
        minor: Some(0),
        patch: Some(9),
        pre: Vec::new(),
    },
    r.predicates[0]
);

assert_eq!(range::Predicate {
        op: range::Op::LtEq,
        major: 2,
        minor: Some(5),
        patch: Some(3),
        pre: Vec::new(),
    },
    r.predicates[1]
);