# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
name = "scopeguard"
version = "1.2.0"
authors = ["bluss"]
description = """
A RAII scope guard that will run a given closure when it goes out of scope,
even if the code between panics (assuming unwinding panic).

Defines the macros `defer!`, `defer_on_unwind!`, `defer_on_success!` as
shorthands for guards with one of the implemented strategies.
"""
documentation = "https://docs.rs/scopeguard/"
readme = "README.md"
keywords = [
    "scope-guard",
    "defer",
    "panic",
    "unwind",
]
categories = [
    "rust-patterns",
    "no-std",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/bluss/scopeguard"

[package.metadata.release]
no-dev-version = true

[features]
default = ["use_std"]
use_std = []
