| Crates.io | trail |
| lib.rs | trail |
| version | 0.1.0 |
| created_at | 2018-03-18 18:46:10.852295+00 |
| updated_at | 2018-03-18 18:46:10.852295+00 |
| description | Build cross-platform paths at compile time. |
| homepage | |
| repository | https://github.com/zacharygolba/trail |
| max_upload_size | |
| id | 56302 |
| size | 23,490 |
Build cross-platform paths at compile time.
First, add trail to the dependencies section of your Cargo.toml:
[dependencies]
trail = "0.1"
Next, add the following snippet to the entry point of your crate (lib.rs or main.rs):
#[macro_use]
extern crate trail;
You can also use trail! anywhere else an expression is expected. The expanded output is functionally equivelant to calling Path::new with a hard coded literal.
Posix
assert_eq!(trail!("", "hello", "world"), Path::new("/hello/world"));
assert_eq!(trail!("hello", "world"), Path::new("hello/world"));
Windows
assert_eq!(trail!("", "hello", "world"), Path::new("\\hello\\world"));
assert_eq!(trail!("hello", "world"), Path::new("hello\\world"));
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.