This crate provides function-like macros to check or operate paths relative to CARGOMANIFESTDIR at compile time.
```rust
println!(path!("Cargo.toml")); println!(path!("src/lib.rs")); println!(path!("src", "lib.rs")); println!(path!("src", "lib.rs", "/bin")); println!(path!("/usr"));
println!(existpath!("Cargo.toml")); println!(directorypath!("src")); println!(notdirectorypath!("Cargo.toml")); println!(file_path!("Cargo.toml"));
println!(relativepath!("Cargo.toml")); println!(directoryrelativepath!("src")); println!(notdirectoryrelativepath!("Cargo.toml")); println!(filerelativepath!("Cargo.toml"));
// The tuple
feature let these macros support to input a tuple or tuples, which is useful when you want to use these macros inside a macro_rule!
macro and concatenate with other literal strings.
// $x:expr
matchers can be used in these macros thus.
{ println!(path!(("foo",))); println!(path!(("foo", "bar"))); println!(path!("a", ("foo", "bar"))); println!(path!(("foo", "bar"), "a")); println!(path!(("foo", "bar"), ("a", "b"))); } ```
https://crates.io/crates/manifest-dir-macros
https://docs.rs/manifest-dir-macros