# 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 = "der-parser"
version = "6.0.0"
authors = ["Pierre Chifflier <chifflier@wzdftpd.net>"]
include = ["LICENSE-*", "CHANGELOG.md", "README.md", "UPGRADING.md", ".gitignore", "Cargo.toml", "bench/*.rs", "src/*.rs", "src/ber/*.rs", "src/der/*.rs", "tests/*.rs", "der-oid-macro/Cargo.toml", "der-oid-macro/src/*.rs"]
description = "Parser/encoder for ASN.1 BER/DER data"
homepage = "https://github.com/rusticata/der-parser"
readme = "README.md"
keywords = ["BER", "DER", "ASN1", "parser", "nom"]
categories = ["parser-implementations"]
license = "MIT/Apache-2.0"
repository = "https://github.com/rusticata/der-parser.git"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies.bitvec]
version = "0.22"
optional = true

[dependencies.cookie-factory]
version = "0.3.0"
optional = true

[dependencies.der-oid-macro]
version = "0.5"

[dependencies.nom]
version = "7.0"

[dependencies.num-bigint]
version = "0.4"
optional = true

[dependencies.num-traits]
version = "0.2"

[dependencies.rusticata-macros]
version = "4.0"
[dev-dependencies.hex-literal]
version = "0.3"

[dev-dependencies.pretty_assertions]
version = "0.7"

[dev-dependencies.test-case]
version = "1.0"

[features]
bigint = ["num-bigint"]
default = ["std"]
serialize = ["std", "cookie-factory"]
std = []
unstable = []
