# 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"
name = "swc_common"
version = "23.0.1"
authors = ["강동윤 <kdy1997.dev@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Common utilities for the swc project."
documentation = "https://rustdoc.swc.rs/swc_common/"
readme = false
license = "Apache-2.0"
repository = "https://github.com/swc-project/swc.git"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
__plugin = ["encoding-impl"]
__plugin_mode = []
__plugin_rt = []
__rkyv = []
concurrent = ["parking_lot"]
debug = []
default = []
diagnostic-serde = []
encoding-impl = [
    "cbor4ii",
    "swc_atoms/encoding-impl",
]
plugin-base = [
    "__plugin",
    "rkyv-impl",
    "diagnostic-serde",
]
plugin-mode = [
    "__plugin_mode",
    "plugin-base",
]
plugin-rt = [
    "__plugin_rt",
    "plugin-base",
]
plugin_transform_schema_v1 = []
plugin_transform_schema_vtest = []
rkyv-impl = [
    "__rkyv",
    "rkyv",
    "swc_atoms/rkyv-impl",
    "bytes-str/rkyv",
    "bytecheck",
    "rancor",
]
shrink-to-fit = [
    "dep:shrink-to-fit",
    "swc_atoms/shrink-to-fit",
]
sourcemap = ["dep:swc_sourcemap"]
tty-emitter = ["termcolor"]

[lib]
name = "swc_common"
path = "src/lib.rs"
bench = false

[[test]]
name = "ast_serde"
path = "tests/ast_serde.rs"

[[test]]
name = "attr_interop"
path = "tests/attr_interop.rs"

[[test]]
name = "concurrent"
path = "tests/concurrent.rs"

[[test]]
name = "empty"
path = "tests/empty.rs"

[[test]]
name = "issue_3159"
path = "tests/issue_3159.rs"

[[test]]
name = "spanned_attr"
path = "tests/spanned_attr.rs"

[dependencies.anyhow]
version = "1.0.98"

[dependencies.arbitrary]
version = "1"
features = ["derive"]
optional = true

[dependencies.ast_node]
version = "5.0.0"

[dependencies.better_scoped_tls]
version = "1.0.1"

[dependencies.bytecheck]
version = "0.8.0"
optional = true

[dependencies.bytes-str]
version = "0.2.5"
features = ["serde"]

[dependencies.cbor4ii]
version = "1.2"
features = ["use_std"]
optional = true

[dependencies.either]
version = "1.10.0"

[dependencies.from_variant]
version = "3.0.0"

[dependencies.num-bigint]
version = "0.4.3"

[dependencies.once_cell]
version = "1.19.0"

[dependencies.parking_lot]
version = "0.12.1"
optional = true

[dependencies.rancor]
version = "0.1.0"
optional = true

[dependencies.rkyv]
version = "0.8.16"
optional = true

[dependencies.rustc-hash]
version = "2"

[dependencies.serde]
version = "1.0.225"
features = ["derive"]

[dependencies.shrink-to-fit]
version = "0.2.1"
optional = true

[dependencies.siphasher]
version = "0.3.9"

[dependencies.swc_atoms]
version = "9.0.3"

[dependencies.swc_eq_ignore_macros]
version = "1.0.1"

[dependencies.swc_sourcemap]
version = "10.0.2"
optional = true

[dependencies.swc_visit]
version = "2.0.1"

[dependencies.termcolor]
version = "1.0"
optional = true

[dependencies.tracing]
version = "0.1.41"

[dependencies.unicode-width]
version = "0.2.1"

[dependencies.url]
version = "2.5.4"

[dev-dependencies.par-iter]
version = "2.0.0"

[dev-dependencies.serde_json]
version = "1.0.140"

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(swc_ast_unknown)"]
