[package]
edition = "2021"
rust-version = "1.65"
name = "chumsky"
version = "0.13.0"
authors = [
"Joshua Barretto <joshua.s.barretto@gmail.com>",
"Elijah Hartvigsen <elijah.reed@hartvigsen.xyz",
"Jakob Wiesmore <runetynan@gmail.com>",
]
build = false
exclude = [
"/misc/*",
"/benches/samples/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A parser library for humans with powerful error recovery"
readme = "README.md"
keywords = [
"parser",
"combinator",
"token",
"language",
"syntax",
]
categories = [
"parsing",
"text-processing",
]
license = "MIT"
repository = "https://codeberg.org/zesterer/chumsky"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
_test_stable = [
"std",
"stacker",
"memoization",
"extension",
"pratt",
"either",
"regex",
"serde",
"bytes",
]
bytes = ["dep:bytes"]
debug = [
"unstable",
"nightly",
"dep:railroad",
]
default = [
"std",
"stacker",
]
docsrs = []
either = ["dep:either"]
extension = []
lexical-numbers = [
"lexical",
"unstable",
]
memoization = []
nightly = []
pratt = []
regex = ["dep:regex-automata"]
serde = ["dep:serde"]
stacker = [
"dep:stacker",
"std",
]
std = [
"regex-automata?/std",
"serde?/std",
]
unstable = []
[lib]
name = "chumsky"
path = "src/lib.rs"
[[example]]
name = "brainfuck"
path = "examples/brainfuck.rs"
[[example]]
name = "debug"
path = "examples/debug.rs"
required-features = ["debug"]
[[example]]
name = "foo"
path = "examples/foo.rs"
required-features = ["std"]
[[example]]
name = "indent"
path = "examples/indent.rs"
[[example]]
name = "io"
path = "examples/io.rs"
required-features = ["std"]
[[example]]
name = "json"
path = "examples/json.rs"
required-features = ["std"]
[[example]]
name = "json_fast"
path = "examples/json_fast.rs"
required-features = ["std"]
[[example]]
name = "logos"
path = "examples/logos.rs"
[[example]]
name = "mini_ml"
path = "examples/mini_ml.rs"
required-features = ["pratt"]
[[example]]
name = "nano_rust"
path = "examples/nano_rust.rs"
[[example]]
name = "nested"
path = "examples/nested.rs"
[[example]]
name = "nested_spans"
path = "examples/nested_spans.rs"
[[example]]
name = "pythonic"
path = "examples/pythonic.rs"
[[example]]
name = "zero-copy"
path = "examples/zero-copy.rs"
[[bench]]
name = "backtrack"
path = "benches/backtrack.rs"
harness = false
[[bench]]
name = "cbor"
path = "benches/cbor.rs"
harness = false
[[bench]]
name = "json"
path = "benches/json.rs"
harness = false
required-features = ["std"]
[[bench]]
name = "lex"
path = "benches/lex.rs"
harness = false
[[bench]]
name = "parser"
path = "benches/parser.rs"
harness = false
[[bench]]
name = "utils"
path = "benches/utils.rs"
[dependencies.bytes]
version = "1"
optional = true
default-features = false
[dependencies.either]
version = "1.8.1"
optional = true
[dependencies.hashbrown]
version = "0.15"
[dependencies.lexical]
version = "6.1.1"
features = [
"parse-integers",
"parse-floats",
"format",
]
optional = true
default-features = false
[dependencies.railroad]
version = "0.3.3"
optional = true
[dependencies.regex-automata]
version = "0.4"
features = [
"alloc",
"meta",
"perf",
"unicode",
"nfa",
"dfa",
"hybrid",
]
optional = true
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true
default-features = false
[dependencies.stacker]
version = "0.1"
optional = true
[dependencies.unicode-ident]
version = "1.0.10"
[dependencies.unicode-segmentation]
version = "1"
[dev-dependencies.ariadne]
version = "0.5"
[dev-dependencies.ciborium]
version = "0.2"
[dev-dependencies.criterion]
version = "0.4.0"
[dev-dependencies.lasso]
version = "0.7"
[dev-dependencies.logos]
version = "0.13"
[dev-dependencies.nom]
version = "7.1"
[dev-dependencies.nom8]
version = "8"
package = "nom"
[dev-dependencies.pest]
version = "2.5"
[dev-dependencies.pest_derive]
version = "2.5"
[dev-dependencies.pom]
version = "3.2"
[dev-dependencies.serde_json]
version = "1.0"
features = ["preserve_order"]
[dev-dependencies.slotmap]
version = "1.0"
[dev-dependencies.sn]
version = "0.1"
[dev-dependencies.winnow]
version = "0.7.0"
[target."cfg(unix)".dev-dependencies.pprof]
version = "0.11"
features = [
"flamegraph",
"criterion",
]
[profile.bench]
debug = 2