trail

Crates.iotrail
lib.rstrail
version0.1.0
sourcesrc
created_at2018-03-18 18:46:10.852295
updated_at2018-03-18 18:46:10.852295
descriptionBuild cross-platform paths at compile time.
homepage
repositoryhttps://github.com/zacharygolba/trail
max_upload_size
id56302
size23,490
Zachary Golba (zacharygolba)

documentation

https://docs.rs/trail/0.1

README

trail

CircleCI branch AppVeyor branch Crates.io

Build cross-platform paths at compile time.

Installation

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;

Usage

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"));

License

Licensed under either of

at your option.

Contribution

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.

Commit count: 3

cargo fmt