# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.87.0"
name = "metaslang_bindings"
version = "1.3.4"
authors = [
    "Slang Team <slang@nomic.foundation>",
    "Nomic Foundation <packages@nomic.foundation>",
]
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Computes semantic language bindings from parsed source code"
homepage = "https://nomicfoundation.github.io/slang/"
readme = "README.md"
keywords = ["parser"]
categories = [
    "compilers",
    "parsing",
    "parser-implementations",
]
license = "MIT"
repository = "https://github.com/NomicFoundation/slang/"

[features]
__private_testing_utils = []
default = []

[lib]
name = "metaslang_bindings"
path = "src/lib.rs"

[dependencies.metaslang_cst]
version = "1.3.4"

[dependencies.metaslang_graph_builder]
version = "1.3.4"

[dependencies.metaslang_stack_graphs]
version = "1.3.4"

[dependencies.semver]
version = "1.0.26"
features = ["serde"]

[dependencies.thiserror]
version = "2.0.12"

[dev-dependencies]

[lints.clippy]
all = "warn"
cargo = "warn"
clone_on_ref_ptr = "warn"
collection_is_never_read = "warn"
equatable_if_let = "warn"
exit = "warn"
pedantic = "warn"
redundant_else = "warn"
rest_pat_in_fully_bound_structs = "warn"
self_named_module_files = "warn"
useless_let_if_seq = "warn"
verbose_file_reads = "warn"

[lints.clippy.assigning_clones]
level = "allow"
priority = 1

[lints.clippy.match_same_arms]
level = "allow"
priority = 1

[lints.clippy.missing_errors_doc]
level = "allow"
priority = 1

[lints.clippy.missing_panics_doc]
level = "allow"
priority = 1

[lints.clippy.module_name_repetitions]
level = "allow"
priority = 1

[lints.clippy.multiple_crate_versions]
level = "allow"
priority = 1

[lints.clippy.must_use_candidate]
level = "allow"
priority = 1

[lints.clippy.needless_continue]
level = "allow"
priority = 1

[lints.clippy.needless_raw_string_hashes]
level = "allow"
priority = 1

[lints.clippy.redundant_closure_for_method_calls]
level = "allow"
priority = 1

[lints.clippy.unnecessary_debug_formatting]
level = "allow"
priority = 1

[lints.rust]
elided_lifetimes_in_paths = "warn"
explicit_outlives_requirements = "warn"
meta_variable_misuse = "warn"
unused_crate_dependencies = "warn"
unused_extern_crates = "warn"
unused_lifetimes = "warn"
unused_macro_rules = "warn"
