"""
@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:rust.bzl",
    "rust_binary",
    "rust_library",
    "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",  # MIT from expression "MIT"
])

# Generated Targets

rust_library(
    name = "tracing_futures",
    srcs = glob(["**/*.rs"]),
    crate_features = [
        "pin-project",
        "std-future",
    ],
    crate_root = "src/lib.rs",
    crate_type = "lib",
    data = [],
    edition = "2018",
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "manual",
    ],
    version = "0.2.5",
    # buildifier: leave-alone
    deps = [
        "@raze__pin_project__1_0_7//:pin_project",
        "@raze__tracing__0_1_26//:tracing",
    ],
)

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

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