[package]
edition = "2024"
name = "m2-syn"
version = "0.7.1"
build = false
exclude = [
"book/",
"codex-session-*.md",
"examples/example_sequences.m2",
"src/schema/nodes_rules.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Parser, typed CST, traversal and procedural macros for Macaulay2"
readme = "README.md"
keywords = [
"macaulay2",
"syntax",
"syn",
"parse",
"m2",
]
categories = [
"development-tools::ffi",
"parser-implementations",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/AlexanderGolys/m2-syn"
[features]
default = ["tree-sitter"]
tree-sitter = [
"dep:tree-sitter",
"dep:tree-sitter-macaulay2",
]
[lib]
name = "m2_syn"
path = "src/lib.rs"
[[example]]
name = "hierarchy_visit_emit"
path = "examples/hierarchy_visit_emit.rs"
required-features = ["tree-sitter"]
[[example]]
name = "inspect"
path = "examples/inspect.rs"
required-features = ["tree-sitter"]
[[example]]
name = "literal_return_types"
path = "examples/literal_return_types.rs"
[[example]]
name = "live_parser"
path = "examples/live_parser.rs"
[[example]]
name = "parse_emit_walkthrough"
path = "examples/parse_emit_walkthrough.rs"
[[example]]
name = "type_inference"
path = "examples/type_inference.rs"
required-features = ["tree-sitter"]
[[test]]
name = "cell_separation"
path = "tests/cell_separation.rs"
required-features = ["tree-sitter"]
[[test]]
name = "comment_after_closer"
path = "tests/comment_after_closer.rs"
required-features = ["tree-sitter"]
[[test]]
name = "comment_placement"
path = "tests/comment_placement.rs"
required-features = ["tree-sitter"]
[[test]]
name = "expression_specializations"
path = "tests/expression_specializations.rs"
required-features = ["tree-sitter"]
[[test]]
name = "generated_api"
path = "tests/generated_api.rs"
required-features = ["tree-sitter"]
[[test]]
name = "leading_layout"
path = "tests/leading_layout.rs"
required-features = ["tree-sitter"]
[[test]]
name = "left_arrow_assignment_target"
path = "tests/left_arrow_assignment_target.rs"
required-features = ["tree-sitter"]
[[test]]
name = "native_cell_parser"
path = "tests/native_cell_parser.rs"
[[test]]
name = "native_lexer"
path = "tests/native_lexer.rs"
[[test]]
name = "native_parser"
path = "tests/native_parser.rs"
[[test]]
name = "native_realtime"
path = "tests/native_realtime.rs"
[[test]]
name = "parsed_file"
path = "tests/parsed_file.rs"
required-features = ["tree-sitter"]
[[test]]
name = "parser_api"
path = "tests/parser_api.rs"
required-features = ["tree-sitter"]
[[test]]
name = "pretty_tree"
path = "tests/pretty_tree.rs"
[[test]]
name = "proc_macro"
path = "tests/proc_macro.rs"
[[test]]
name = "realtime_parser"
path = "tests/realtime_parser.rs"
required-features = ["tree-sitter"]
[[test]]
name = "review_regressions"
path = "tests/review_regressions.rs"
required-features = ["tree-sitter"]
[[test]]
name = "strutuct_grammar"
path = "tests/strutuct_grammar.rs"
[[test]]
name = "syntax_wrappers"
path = "tests/syntax_wrappers.rs"
[[test]]
name = "trailing_layout"
path = "tests/trailing_layout.rs"
required-features = ["tree-sitter"]
[[test]]
name = "tree_sitter_reconstruction"
path = "tests/tree_sitter_reconstruction.rs"
required-features = ["tree-sitter"]
[[test]]
name = "tuple_products"
path = "tests/tuple_products.rs"
[dependencies.m2-syn-macros]
version = "0.6.1"
[dependencies.these-macros-should-be-illegal]
version = "0.7.0"
[dependencies.tree-sitter]
version = "0.26.12"
optional = true
[dependencies.tree-sitter-macaulay2]
version = "6.3.2"
optional = true
[lints.rust]
missing_docs = "deny"