@@ -19,17 +19,25 @@ use std::path::*;
19
19
/// use pathdiff::diff_paths;
20
20
/// use std::path::*;
21
21
///
22
- /// let baz = "/foo/bar/baz";
23
- /// let bar = "/foo/bar";
24
- /// let quux = "/foo/bar/quux";
25
- /// assert_eq!(diff_paths(bar, baz), Some("../".into()));
26
- /// assert_eq!(diff_paths(baz, bar), Some("baz".into()));
27
- /// assert_eq!(diff_paths(quux, baz), Some("../quux".into()));
28
- /// assert_eq!(diff_paths(baz, quux), Some("../baz".into()));
29
- /// assert_eq!(diff_paths(bar, quux), Some("../".into()));
22
+ /// assert_eq!(diff_paths("/foo/bar", "/foo/bar/baz"), Some("../".into()));
23
+ /// assert_eq!(diff_paths("/foo/bar/baz", "/foo/bar"), Some("baz".into()));
24
+ /// assert_eq!(diff_paths("/foo/bar/quux", "/foo/bar/baz"), Some("../quux".into()));
25
+ /// assert_eq!(diff_paths("/foo/bar/baz", "/foo/bar/quux"), Some("../baz".into()));
26
+ /// assert_eq!(diff_paths("/foo/bar", "/foo/bar/quux"), Some("../".into()));
30
27
///
31
- /// assert_eq!(diff_paths(&baz, &bar.to_string()), Some("baz".into()));
32
- /// assert_eq!(diff_paths(Path::new(baz), Path::new(bar).to_path_buf()), Some("baz".into()));
28
+ /// assert_eq!(diff_paths("/foo/bar", "baz"), Some("/foo/bar".into()));
29
+ /// assert_eq!(diff_paths("/foo/bar", "/baz"), Some("../foo/bar".into()));
30
+ /// assert_eq!(diff_paths("baz", "/foo/bar"), None);
31
+ /// assert_eq!(diff_paths("foo", "bar"), Some("../foo".into()));
32
+ ///
33
+ /// assert_eq!(
34
+ /// diff_paths(&"/foo/bar/baz", "/foo/bar".to_string()),
35
+ /// Some("baz".into())
36
+ /// );
37
+ /// assert_eq!(
38
+ /// diff_paths(Path::new("/foo/bar/baz"), Path::new("/foo/bar").to_path_buf()),
39
+ /// Some("baz".into())
40
+ /// );
33
41
/// ```
34
42
pub fn diff_paths < P , B > ( path : P , base : B ) -> Option < PathBuf >
35
43
where
@@ -89,17 +97,25 @@ mod utf8_paths {
89
97
/// use camino::*;
90
98
/// use pathdiff::diff_utf8_paths;
91
99
///
92
- /// let baz = "/foo/bar/baz";
93
- /// let bar = "/foo/bar";
94
- /// let quux = "/foo/bar/quux";
95
- /// assert_eq!(diff_utf8_paths(bar, baz), Some("../".into()));
96
- /// assert_eq!(diff_utf8_paths(baz, bar), Some("baz".into()));
97
- /// assert_eq!(diff_utf8_paths(quux, baz), Some("../quux".into()));
98
- /// assert_eq!(diff_utf8_paths(baz, quux), Some("../baz".into()));
99
- /// assert_eq!(diff_utf8_paths(bar, quux), Some("../".into()));
100
+ /// assert_eq!(diff_utf8_paths("/foo/bar", "/foo/bar/baz"), Some("../".into()));
101
+ /// assert_eq!(diff_utf8_paths("/foo/bar/baz", "/foo/bar"), Some("baz".into()));
102
+ /// assert_eq!(diff_utf8_paths("/foo/bar/quux", "/foo/bar/baz"), Some("../quux".into()));
103
+ /// assert_eq!(diff_utf8_paths("/foo/bar/baz", "/foo/bar/quux"), Some("../baz".into()));
104
+ /// assert_eq!(diff_utf8_paths("/foo/bar", "/foo/bar/quux"), Some("../".into()));
105
+ ///
106
+ /// assert_eq!(diff_utf8_paths("/foo/bar", "baz"), Some("/foo/bar".into()));
107
+ /// assert_eq!(diff_utf8_paths("/foo/bar", "/baz"), Some("../foo/bar".into()));
108
+ /// assert_eq!(diff_utf8_paths("baz", "/foo/bar"), None);
109
+ /// assert_eq!(diff_utf8_paths("foo", "bar"), Some("../foo".into()));
100
110
///
101
- /// assert_eq!(diff_utf8_paths(&baz, &bar.to_string()), Some("baz".into()));
102
- /// assert_eq!(diff_utf8_paths(Utf8Path::new(baz), Utf8Path::new(bar).to_path_buf()), Some("baz".into()));
111
+ /// assert_eq!(
112
+ /// diff_utf8_paths(&"/foo/bar/baz", "/foo/bar".to_string()),
113
+ /// Some("baz".into())
114
+ /// );
115
+ /// assert_eq!(
116
+ /// diff_utf8_paths(Utf8Path::new("/foo/bar/baz"), Utf8Path::new("/foo/bar").to_path_buf()),
117
+ /// Some("baz".into())
118
+ /// );
103
119
/// ```
104
120
#[ cfg_attr( docsrs, doc( cfg( feature = "camino" ) ) ) ]
105
121
pub fn diff_utf8_paths < P , B > ( path : P , base : B ) -> Option < Utf8PathBuf >
0 commit comments