# 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 dyn_format.

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

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

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

[dependencies]
anyhow.workspace = true
