"""
@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 "//wasm_bindgen/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 "database" with type "example" omitted

# Unsupported target "git-http-backend" with type "example" omitted

# Unsupported target "hello-world" with type "example" omitted

# Unsupported target "login-session" with type "example" omitted

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

# Unsupported target "reverse-proxy" with type "example" omitted

# Unsupported target "simple-form" with type "example" omitted

# Unsupported target "static-files" with type "example" omitted

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

rust_library(
    name = "rouille",
    srcs = glob(["**/*.rs"]),
    crate_features = [
    ],
    crate_root = "src/lib.rs",
    data = [],
    edition = "2015",
    proc_macro_deps = [
        "@rules_rust_wasm_bindgen__serde_derive__1_0_130//:serde_derive",
    ],
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "crate-name=rouille",
        "manual",
    ],
    version = "3.4.0",
    # buildifier: leave-alone
    deps = [
        "@rules_rust_wasm_bindgen__base64__0_13_0//:base64",
        "@rules_rust_wasm_bindgen__chrono__0_4_19//:chrono",
        "@rules_rust_wasm_bindgen__filetime__0_2_15//:filetime",
        "@rules_rust_wasm_bindgen__multipart__0_18_0//:multipart",
        "@rules_rust_wasm_bindgen__num_cpus__1_13_0//:num_cpus",
        "@rules_rust_wasm_bindgen__percent_encoding__2_1_0//:percent_encoding",
        "@rules_rust_wasm_bindgen__rand__0_8_4//:rand",
        "@rules_rust_wasm_bindgen__serde__1_0_130//:serde",
        "@rules_rust_wasm_bindgen__serde_json__1_0_69//:serde_json",
        "@rules_rust_wasm_bindgen__sha1__0_6_0//:sha1",
        "@rules_rust_wasm_bindgen__threadpool__1_8_1//:threadpool",
        "@rules_rust_wasm_bindgen__time__0_3_2//:time",
        "@rules_rust_wasm_bindgen__tiny_http__0_8_2//:tiny_http",
        "@rules_rust_wasm_bindgen__url__2_2_2//:url",
    ],
)
