"""
@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 "//third_party/rust/cargo", which limits external
    # visibility to explicit Cargo.toml dependencies.
    "//visibility:public",
])

licenses([
    "notice",  # Zlib from expression "Zlib OR (Apache-2.0 OR MIT)"
])

# Generated Targets

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

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

rust_library(
    name = "tinyvec",
    srcs = glob(["**/*.rs"]),
    crate_features = [
        "alloc",
        "default",
        "tinyvec_macros",
    ],
    crate_root = "src/lib.rs",
    data = [],
    edition = "2018",
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "crate-name=tinyvec",
        "manual",
    ],
    version = "1.6.0",
    # buildifier: leave-alone
    deps = [
        "@raze__tinyvec_macros__0_1_0//:tinyvec_macros",
    ],
)

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

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