[package] authors = ["강동윤 "] description = "Ecmascript ast." documentation = "https://rustdoc.swc.rs/swc_ecma_ast/" edition = "2021" license = "Apache-2.0" name = "swc_ecma_ast" repository = "https://github.com/swc-project/swc.git" version = "0.102.1" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [lib] bench = false [features] __rkyv = [] default = [] fuzzing = ["arbitrary", "swc_common/arbitrary"] # Enably rkyv serialization with stable version of rkyv. rkyv-impl = ["__rkyv", "rkyv", "swc_atoms/rkyv-impl", "swc_common/rkyv-impl"] # Enable rkyv serialization with updated version of rkyv, along with bytecheck. rkyv-bytecheck-impl = [ "__rkyv", "rkyv-latest", "swc_atoms/rkyv-bytecheck-impl", "swc_common/rkyv-bytecheck-impl", ] serde-impl = ["serde"] [dependencies] arbitrary = { version = "1", optional = true, features = ["derive"] } bitflags = "1" bytecheck = { version = "0.6.9", optional = true } is-macro = "0.2.1" num-bigint = { version = "0.4", features = ["serde"] } rkyv = { package = "rkyv", version = "=0.7.40", optional = true } # This is to avoid cargo version selection conflict between rkyv=0.7.40 and other versions, as it is strictly pinned # cannot be merged. rkyv-latest = { package = "rkyv-test", version = "=0.7.38-test.2", optional = true } scoped-tls = "1.0.0" serde = { version = "1.0.133", features = ["derive"], optional = true } unicode-id = "0.3" string_enum = { version = "0.4.0", path = "../string_enum" } swc_atoms = { version = "0.4.40", path = "../swc_atoms" } swc_common = { version = "0.30.1", path = "../swc_common" } [dev-dependencies] serde_json = "1"