gecko-dev/third_party/rust/cfg-if
Nathan Froyd b93bf873ba Bug 1502964 - part 2 - update winapi to froydnj/winapi-rs#aarch64; r=ted.mielczarek 2018-11-02 10:56:08 -04:00
..
src Bug 1436058 - Update Cargo lockfiles and re-vendor rust dependencies. r=jrmuizel 2018-02-12 11:32:10 -05:00
tests
.cargo-checksum.json Bug 1502964 - part 2 - update winapi to froydnj/winapi-rs#aarch64; r=ted.mielczarek 2018-11-02 10:56:08 -04:00
Cargo.toml Bug 1436058 - Update Cargo lockfiles and re-vendor rust dependencies. r=jrmuizel 2018-02-12 11:32:10 -05:00
LICENSE-APACHE Bug 1277338 - Part 13: Update vendored crates for newer `js` crate; r=sfink 2017-09-05 09:26:22 -07:00
LICENSE-MIT Bug 1277338 - Part 13: Update vendored crates for newer `js` crate; r=sfink 2017-09-05 09:26:22 -07:00
README.md

README.md

cfg-if

Build Status

Documentation

A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.

[dependencies]
cfg-if = "0.1"

Example

#[macro_use]
extern crate cfg_if;

cfg_if! {
    if #[cfg(unix)] {
        fn foo() { /* unix specific functionality */ }
    } else if #[cfg(target_pointer_width = "32")] {
        fn foo() { /* non-unix, 32-bit functionality */ }
    } else {
        fn foo() { /* fallback implementation */ }
    }
}

fn main() {
    foo();
}

License

cfg-if is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), with portions covered by various BSD-like licenses.

See LICENSE-APACHE, and LICENSE-MIT for details.