[package] name = "lalrpop" description = "convenient LR(1) parser generator" readme = "../README.md" keywords = ["parser", "generator", "LR", "yacc", "grammar"] categories = ["parsing"] workspace = ".." default-run = "lalrpop" repository.workspace = true edition.workspace = true authors.workspace = true license.workspace = true version.workspace = true rust-version.workspace = true exclude = ["build.rs"] [lib] doctest = false [dependencies] ascii-canvas = { version = "4.0", default-features = false } bit-set = { version = "0.8", default-features = false } ena = { version = "0.14", default-features = false } itertools = { version = "0.13", default-features = false, features = ["use_std"] } petgraph = { version = "0.6", default-features = false } regex = { workspace = true } regex-syntax = { workspace = true } sha3 = { version = "0.10", default-features = false } string_cache = { version = "0.8", default-features = false } term = { version = "1.0", default-features = false } unicode-xid = { version = "0.2", default-features = false } walkdir = "2.4.0" # This dependency is only needed for binary builds, if you use LALRPOP as # library, disable it in your project by setting default-features = false. pico-args = { version = "0.5", default-features = false, optional = true } lalrpop-util = { path = "../lalrpop-util", version = "0.22.0", default-features = false } [dev-dependencies] diff = { workspace = true } rand = "0.8" [features] default=["lexer", "unicode", "pico-args"] unicode = ["regex/unicode", "regex-syntax/unicode", "lalrpop-util/unicode"] lexer = ["lalrpop-util/lexer", "lalrpop-util/std"] [package.metadata.docs.rs] features = ["lexer"] [[bin]] name = "lalrpop" required-features = ["pico-args"]