"""
@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",  # MIT from expression "MIT"
])

# Generated Targets

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

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

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

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

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

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

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

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

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

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

rust_library(
    name = "tracing",
    srcs = glob(["**/*.rs"]),
    crate_features = [
        "log",
        "std",
    ],
    crate_root = "src/lib.rs",
    data = [],
    edition = "2018",
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "crate-name=tracing",
        "manual",
    ],
    version = "0.1.37",
    # buildifier: leave-alone
    deps = [
        "@raze__cfg_if__1_0_0//:cfg_if",
        "@raze__log__0_4_20//:log",
        "@raze__pin_project_lite__0_2_13//:pin_project_lite",
        "@raze__tracing_core__0_1_31//:tracing_core",
    ],
)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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