# 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]
edition = "2018"
name = "scroll_derive"
version = "0.12.0"
authors = [
    "m4b <m4b.github.io@gmail.com>",
    "Ted Mielczarek <ted@mielczarek.org>",
    "Systemcluster <me@systemcluster.me>",
]
include = [
    "src/**/*",
    "Cargo.toml",
    "LICENSE",
    "README.md",
]
description = "A macros 1.1 derive implementation for Pread and Pwrite traits from the scroll crate"
documentation = "https://docs.rs/scroll_derive"
readme = "README.md"
keywords = [
    "derive",
    "macros",
    "pread",
    "pwrite",
    "bytes",
]
license = "MIT"
repository = "https://github.com/m4b/scroll"

[lib]
proc-macro = true

[dependencies.proc-macro2]
version = "1"

[dependencies.quote]
version = "1"

[dependencies.syn]
version = "2"

[dev-dependencies.scroll]
version = "0.11"
