[workspace]
members = ["cli"]
[package]
name = "libcorn"
version = "0.10.1"
edition = "2021"
license = "MIT"
description = "Parsing engine for Corn, a simple and pain-free configuration language."
repository = "https://github.com/JakeStanger/corn"
categories = ["config", "parsing"]
keywords = ["configuration", "language", "wasm", "pest", "peg"]
authors = ["Jake Stanger <mail@jakestanger.com>"]
homepage = "https://cornlang.dev/"
documentation = "https://docs.rs/libcorn"
readme = "README.md"
[features]
wasm = [
"dep:wasm-bindgen",
"dep:serde-wasm-bindgen",
"dep:console_error_panic_hook",
"dep:wee_alloc",
]
lua51 = ["dep:mlua", "mlua/lua51"]
lua52 = ["dep:mlua", "mlua/lua52"]
lua53 = ["dep:mlua", "mlua/lua53"]
lua54 = ["dep:mlua", "mlua/lua54"]
luajit = ["dep:mlua", "mlua/luajit"]
luajit52 = ["dep:mlua", "mlua/luajit52"]
bench = ["dep:criterion"]
[lib]
name = "corn"
crate-type = ["cdylib", "rlib"]
[dependencies]
pest = "2.7.15"
pest_derive = "2.7.15"
serde = { version = "1.0.218", features = ["derive"] }
indexmap = { version = "2.7.1", features = ["serde"] }
thiserror = "2.0.12"
wasm-bindgen = { version = "0.2.100", optional = true }
serde-wasm-bindgen = { version = "0.6.5", optional = true }
console_error_panic_hook = { version = "0.1.7", optional = true }
wee_alloc = { version = "0.4.5", optional = true }
mlua = { version = "0.11.5", features = [
"module",
"macros",
"serialize",
], optional = true }
criterion = { version = "0.8.1", features = ["html_reports"], optional = true }
[dev-dependencies]
paste = "1.0.15"
wasm-bindgen-test = { version = "0.3.50" }
serde_json = "1.0.140"
serde_norway = "0.9.42"
serde_bytes = "0.11.16"
toml_edit = { version = "0.24.0", features = ["serde"] }
[profile.release]
lto = true
codegen-units = 1
strip = true
[[bench]]
name = "serde"
harness = false
required-features = ["bench"]