Skip to content

Commit c591cfd

Browse files
sb89budziq
authored andcommitted
Added "Check if given version is pre-release" example.
1 parent 79345cc commit c591cfd

File tree

2 files changed

+38
-0
lines changed

2 files changed

+38
-0
lines changed

src/app.md

+36
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
| [Find all files with given pattern ignoring filename case][ex-glob-with] | [![glob-badge]][glob] | [![cat-filesystem-badge]][cat-filesystem] |
1717
| [Parse and increment a version string][ex-semver-increment] | [![semver-badge]][semver] | [![cat-config-badge]][cat-config] |
1818
| [Parse a complex version string][ex-semver-complex] | [![semver-badge]][semver] | [![cat-config-badge]][cat-config] |
19+
| [Check if given version is pre-release][ex-semver-prerelease] | [![semver-badge]][semver] | [![cat-config-badge]][cat-config] |
1920

2021

2122
[ex-clap-basic]: #ex-clap-basic
@@ -690,6 +691,40 @@ fn run() -> Result<()> {
690691
# quick_main!(run);
691692
```
692693

694+
[ex-semver-prerelease]: #ex-semver-prerelease
695+
<a name="ex-semver-prerelease"></a>
696+
## Check if given version is pre-release.
697+
698+
[![semver-badge]][semver] [![cat-config-badge]][cat-config]
699+
700+
Given two versions, we assert (by using [`is_prerelease`]) that one is pre-release and that the other is not.
701+
702+
```rust
703+
# #[macro_use]
704+
# extern crate error_chain;
705+
extern crate semver;
706+
707+
use semver::Version;
708+
#
709+
# error_chain! {
710+
# foreign_links {
711+
# SemVer(semver::SemVerError);
712+
# }
713+
# }
714+
715+
fn run() -> Result<()> {
716+
let version_1 = Version::parse("1.0.0-alpha")?;
717+
let version_2 = Version::parse("1.0.0")?;
718+
719+
assert!(version_1.is_prerelease());
720+
assert!(!version_2.is_prerelease());
721+
722+
Ok(())
723+
}
724+
#
725+
# quick_main!(run);
726+
```
727+
693728
{{#include links.md}}
694729

695730
<!-- API Reference -->
@@ -716,6 +751,7 @@ fn run() -> Result<()> {
716751
[`WalkDirIterator::filter_entry`]: https://docs.rs/walkdir/*/walkdir/trait.WalkDirIterator.html#method.filter_entry
717752
[`follow_links`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.follow_links
718753
[`glob_with`]: https://docs.rs/glob/*/glob/fn.glob_with.html
754+
[`is_prerelease`]: https://docs.rs/semver/*/semver/struct.Version.html#method.is_prerelease
719755
[`tar::Archive`]: https://docs.rs/tar/*/tar/struct.Archive.html
720756
[`tar::Builder`]: https://docs.rs/tar/*/tar/struct.Builder.html
721757
[`tar::Entries`]: https://docs.rs/tar/*/tar/struct.Entries.html

src/intro.md

+2
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ community. It needs and welcomes help. For details see
109109
| [Find all files with given pattern ignoring filename case][ex-glob-with] | [![glob-badge]][glob] | [![cat-filesystem-badge]][cat-filesystem] |
110110
| [Parse and increment a version string][ex-semver-increment] | [![semver-badge]][semver] | [![cat-config-badge]][cat-config] |
111111
| [Parse a complex version string][ex-semver-complex] | [![semver-badge]][semver] | [![cat-config-badge]][cat-config] |
112+
| [Check if given version is pre-release][ex-semver-prerelease] | [![semver-badge]][semver] | [![cat-config-badge]][cat-config] |
112113

113114
## [Logging](logging.html)
114115

@@ -195,6 +196,7 @@ community. It needs and welcomes help. For details see
195196
[ex-rest-post]: net.html#ex-rest-post
196197
[ex-semver-complex]: app.html#ex-semver-complex
197198
[ex-semver-increment]: app.html#ex-semver-increment
199+
[ex-semver-prerelease]: app.html#ex-semver-prerelease
198200
[ex-serialize-csv]: encoding.html#ex-serialize-csv
199201
[ex-sha-digest]: basics.html#ex-sha-digest
200202
[ex-std-read-lines]: basics.html#ex-std-read-lines

0 commit comments

Comments
 (0)