"""
@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 OR Apache-2.0"
])

# Generated Targets

# Unsupported target "bench1" with type "bench" omitted

# Unsupported target "combinations" with type "bench" omitted

# Unsupported target "combinations_with_replacement" with type "bench" omitted

# Unsupported target "fold_specialization" with type "bench" omitted

# Unsupported target "powerset" with type "bench" omitted

# Unsupported target "tree_fold1" with type "bench" omitted

# Unsupported target "tuple_combinations" with type "bench" omitted

# Unsupported target "tuples" with type "bench" omitted

# Unsupported target "iris" with type "example" omitted

rust_library(
    name = "itertools",
    srcs = glob(["**/*.rs"]),
    crate_features = [
        "default",
        "use_alloc",
        "use_std",
    ],
    crate_root = "src/lib.rs",
    data = [],
    edition = "2018",
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "crate-name=itertools",
        "manual",
    ],
    version = "0.10.1",
    # buildifier: leave-alone
    deps = [
        "@rules_rust_tools_rust_analyzer__either__1_6_1//:either",
    ],
)

# Unsupported target "adaptors_no_collect" with type "test" omitted

# Unsupported target "flatten_ok" with type "test" omitted

# Unsupported target "fold_specialization" with type "test" omitted

# Unsupported target "macros_hygiene" with type "test" omitted

# Unsupported target "merge_join" with type "test" omitted

# Unsupported target "peeking_take_while" with type "test" omitted

# Unsupported target "quick" with type "test" omitted

# Unsupported target "specializations" with type "test" omitted

# Unsupported target "test_core" with type "test" omitted

# Unsupported target "test_std" with type "test" omitted

# Unsupported target "tuples" with type "test" omitted

# Unsupported target "zip" with type "test" omitted
