[package]
name = "wasmparser"
version.workspace = true
authors = ["Yury Delendik <ydelendik@mozilla.com>"]
license.workspace = true
repository = "https://github.com/bytecodealliance/wasm-tools/tree/main/crates/wasmparser"
homepage = "https://github.com/bytecodealliance/wasm-tools/tree/main/crates/wasmparser"
keywords = ["parser", "WebAssembly", "wasm"]
description = """
A simple event-driven library for parsing WebAssembly binary files.
"""
edition.workspace = true
exclude = ["benches/*.wasm"]
rust-version.workspace = true
[lints]
workspace = true
[package.metadata.docs.rs]
all-features = true
[dependencies]
bitflags = "2.4.1"
indexmap = { workspace = true, optional = true }
semver = { workspace = true, optional = true }
hashbrown = { workspace = true, optional = true }
serde = { workspace = true, optional = true }
[dev-dependencies]
anyhow = { workspace = true }
criterion = { workspace = true }
wat = { path = "../wat" }
wast = { path = "../wast" }
rayon = { workspace = true }
once_cell = "1.13.0"
wasm-encoder = { path = "../wasm-encoder" }
env_logger.workspace = true
log.workspace = true
[[bench]]
name = "benchmark"
harness = false
[features]
default = ['std', 'validate', 'serde', 'features', 'component-model', 'hash-collections', 'simd']
std = ['indexmap?/std']
hash-collections = [
'dep:hashbrown',
'dep:indexmap',
]
prefer-btree-collections = []
validate = []
serde = ['dep:serde', 'indexmap?/serde', 'hashbrown?/serde']
features = []
component-model = ['dep:semver']
simd = []