[package]
edition = "2024"
name = "swiftlet"
version = "0.1.4"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "swiftlet is a high-performance text-parsing library for Rust, inspired by Python’s Lark."
documentation = "https://docs.rs/swiftlet"
readme = "README.md"
keywords = [
"parsing",
"EARLEY",
"CLR",
"tokenizer",
"AST",
]
categories = [
"parser-implementations",
"algorithms",
"compilers",
"parsing",
]
license = "MIT"
repository = "https://github.com/jmishra01/swiftlet"
[features]
debug = []
default = []
[lib]
name = "swiftlet"
path = "src/lib.rs"
[[example]]
name = "alias_rule"
path = "examples/alias_rule.rs"
[[example]]
name = "ambiguity_grammar"
path = "examples/ambiguity_grammar.rs"
[[example]]
name = "benchmark_parse"
path = "examples/benchmark_parse.rs"
[[example]]
name = "calculate"
path = "examples/calculate.rs"
[[example]]
name = "clr_conflict_grammar"
path = "examples/clr_conflict_grammar.rs"
[[example]]
name = "clr_math"
path = "examples/clr_math.rs"
[[example]]
name = "clr_parser"
path = "examples/clr_parser.rs"
[[example]]
name = "common_terminal_decimal"
path = "examples/common_terminal_decimal.rs"
[[example]]
name = "error_grammar"
path = "examples/error_grammar.rs"
[[example]]
name = "gr_alternatives"
path = "examples/gr_alternatives.rs"
[[example]]
name = "gr_grouping"
path = "examples/gr_grouping.rs"
[[example]]
name = "gr_ignore"
path = "examples/gr_ignore.rs"
[[example]]
name = "gr_import"
path = "examples/gr_import.rs"
[[example]]
name = "gr_optional"
path = "examples/gr_optional.rs"
[[example]]
name = "gr_regex_flags"
path = "examples/gr_regex_flags.rs"
[[example]]
name = "gr_regular_expression"
path = "examples/gr_regular_expression.rs"
[[example]]
name = "gr_repetition_operators"
path = "examples/gr_repetition_operators.rs"
[[example]]
name = "gr_rule"
path = "examples/gr_rule.rs"
[[example]]
name = "gr_string_literals"
path = "examples/gr_string_literals.rs"
[[example]]
name = "gr_terminals"
path = "examples/gr_terminals.rs"
[[example]]
name = "grammar"
path = "examples/grammar.rs"
[[example]]
name = "grammar_test"
path = "examples/grammar_test.rs"
[[example]]
name = "grammar_testing"
path = "examples/grammar_testing.rs"
[[example]]
name = "grammar_testing_slr"
path = "examples/grammar_testing_slr.rs"
[[example]]
name = "import_grammar"
path = "examples/import_grammar.rs"
[[example]]
name = "import_terminal"
path = "examples/import_terminal.rs"
[[example]]
name = "join_terminals"
path = "examples/join_terminals.rs"
[[example]]
name = "json_parse"
path = "examples/json_parse.rs"
[[example]]
name = "lexer_imp"
path = "examples/lexer_imp.rs"
[[example]]
name = "math"
path = "examples/math.rs"
[[example]]
name = "maybe_grammar"
path = "examples/maybe_grammar.rs"
[[example]]
name = "plus_grammar"
path = "examples/plus_grammar.rs"
[[example]]
name = "range_grammar"
path = "examples/range_grammar.rs"
[[example]]
name = "regex_grammar"
path = "examples/regex_grammar.rs"
[[example]]
name = "small_grammar"
path = "examples/small_grammar.rs"
[[example]]
name = "sql_query_parser"
path = "examples/sql_query_parser.rs"
[[example]]
name = "symbol_priority"
path = "examples/symbol_priority.rs"
[[test]]
name = "common"
path = "tests/common.rs"
[[test]]
name = "test_rule"
path = "tests/test_rule.rs"
[[test]]
name = "test_small_project"
path = "tests/test_small_project.rs"
[[test]]
name = "test_terminal"
path = "tests/test_terminal.rs"
[[bench]]
name = "benchmark"
path = "benches/benchmark.rs"
harness = false
[[bench]]
name = "get_terminals"
path = "benches/get_terminals.rs"
harness = false
[dependencies.fancy-regex]
version = "0.17.0"
[dependencies.indexmap]
version = "2.11.0"
[dependencies.thiserror]
version = "2.0.16"
[dev-dependencies.criterion]
version = "0.8.2"
[profile.dev]
opt-level = 1
lto = false
debug = 2
incremental = true
[profile.dev.package."*"]
opt-level = 3
[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
debug = 0
panic = "abort"
incremental = false
strip = "symbols"