# Licensed under the Apache-2.0 license
# SPDX-License-Identifier: Apache-2.0

load("@rules_rust//rust:defs.bzl", "rust_doc", "rust_library", "rust_test")

package(default_visibility = ["//visibility:public"])

rust_library(
    name = "error",
    srcs = [
        "flash.rs",
        "ipc.rs",
        "kernel.rs",
        "lib.rs",
    ],
    crate_name = "util_error",
    edition = "2024",
    deps = [
        "@pigweed//pw_status/rust:pw_status",
        "@rust_crates//:zerocopy",
    ],
)

rust_test(
    name = "error_test",
    crate = ":error",
    edition = "2024",
    rustc_flags = [
        "-C",
        "debug-assertions",
    ],
)

rust_doc(
    name = "error_doc",
    crate = ":error",
)
