# Part of the Crubit project, under the Apache License v2.0 with LLVM
# Exceptions. See /LICENSE for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

# Automatically @generated Cargo.toml for the Rust crate arc_anyhow.

[package]
name = "arc_anyhow"
edition.workspace = true

license-file.workspace = true
repository.workspace = true
categories.workspace = true

[lib]
path = "../../../common/arc_anyhow.rs"

[dependencies]
anyhow.workspace = true
