Crate terraform_version

Source
Expand description

terraform-version is a short parser and match calculator for terraform version constraint syntax.

It follows the terraform semantic constraints.

Compiler support: requires rustc 1.67+

§Example

    let version_req = VersionRequirement::parse("< 5.4.3, >= 1.2.3").unwrap();

    let version = Version::parse("1.2.3").unwrap();
    assert!(version.matches(&version_req));

    let version = Version::parse("5.4.4").unwrap();
    assert!(!version.matches(&version_req));


    let version_req = VersionRequirement::parse("= 1.2.3-beta").unwrap();

    let version = Version::parse("1.2.3-beta").unwrap();
    assert!(version.matches(&version_req));

    let version = Version {
        numeric_identifiers: NumericIdentifiers::new(vec![1, 2, 3]),
        suffix: None
    };
    assert!(!version.matches(&version_req));

§License

terraform-version is provided under the MIT license. See LICENSE.

Structs§

Comparator
NumericIdentifiers
Version
VersionRequirement
Version requirement describing the intersection of some version comparators, such as >= 1.2.3, != 1.3.0.

Enums§

Error
Operator