"""
@generated
cargo-raze crate build file.

DO NOT EDIT! Replaced on runs of cargo-raze
"""

# buildifier: disable=load
load("@bazel_skylib//lib:selects.bzl", "selects")

# buildifier: disable=load
load(
    "@rules_rust//rust:defs.bzl",
    "rust_binary",
    "rust_library",
    "rust_proc_macro",
    "rust_test",
)

package(default_visibility = [
    # Public for visibility by "@raze__crate__version//" targets.
    #
    # Prefer access through "//tools/rust_analyzer/raze", which limits external
    # visibility to explicit Cargo.toml dependencies.
    "//visibility:public",
])

licenses([
    "notice",  # MIT from expression "MIT"
])

# Generated Targets

rust_library(
    name = "clap",
    srcs = glob(["**/*.rs"]),
    aliases = {
    },
    crate_features = [
        "ansi_term",
        "atty",
        "color",
        "default",
        "strsim",
        "suggestions",
        "vec_map",
    ],
    crate_root = "src/lib.rs",
    data = [],
    edition = "2015",
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "crate-name=clap",
        "manual",
    ],
    version = "2.33.3",
    # buildifier: leave-alone
    deps = [
        "@rules_rust_tools_rust_analyzer__atty__0_2_14//:atty",
        "@rules_rust_tools_rust_analyzer__bitflags__1_3_2//:bitflags",
        "@rules_rust_tools_rust_analyzer__strsim__0_8_0//:strsim",
        "@rules_rust_tools_rust_analyzer__textwrap__0_11_0//:textwrap",
        "@rules_rust_tools_rust_analyzer__unicode_width__0_1_9//:unicode_width",
        "@rules_rust_tools_rust_analyzer__vec_map__0_8_2//:vec_map",
    ] + selects.with_or({
        # cfg(not(windows))
        (
            "@rules_rust//rust/platform:i686-apple-darwin",
            "@rules_rust//rust/platform:i686-unknown-linux-gnu",
            "@rules_rust//rust/platform:x86_64-apple-darwin",
            "@rules_rust//rust/platform:x86_64-unknown-linux-gnu",
            "@rules_rust//rust/platform:aarch64-apple-darwin",
            "@rules_rust//rust/platform:aarch64-apple-ios",
            "@rules_rust//rust/platform:aarch64-linux-android",
            "@rules_rust//rust/platform:aarch64-unknown-linux-gnu",
            "@rules_rust//rust/platform:arm-unknown-linux-gnueabi",
            "@rules_rust//rust/platform:i686-linux-android",
            "@rules_rust//rust/platform:i686-unknown-freebsd",
            "@rules_rust//rust/platform:powerpc-unknown-linux-gnu",
            "@rules_rust//rust/platform:s390x-unknown-linux-gnu",
            "@rules_rust//rust/platform:wasm32-unknown-unknown",
            "@rules_rust//rust/platform:wasm32-wasi",
            "@rules_rust//rust/platform:x86_64-apple-ios",
            "@rules_rust//rust/platform:x86_64-linux-android",
            "@rules_rust//rust/platform:x86_64-unknown-freebsd",
        ): [
            "@rules_rust_tools_rust_analyzer__ansi_term__0_11_0//:ansi_term",
        ],
        "//conditions:default": [],
    }),
)
