# 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 = "2024"
name = "boa-cat"
version = "0.3.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Tree-walking ECMAScript interpreter built on ecma-syntax-cat. v0.3.0 adds accessor-property support at the engine level: `Object::with_accessor(key, AccessorPair)` installs a getter/setter pair, and `obj.key` / `obj.key = value` dispatch through the pair instead of doing plain data read/write. Embedders (web-api-cat etc.) can now wire DOM accessors like `document.cookie` via native getter/setter functions. Object-literal `{ get x() {} }` syntax remains gated on ecma-parse-cat learning to emit `ObjectPropertyKind::Get/Set` (the engine handles those AST variants already)."
readme = "README.md"
keywords = [
"ecmascript",
"javascript",
"interpreter",
"boa",
"type-driven",
]
categories = [
"development-tools",
"compilers",
]
license = "MIT OR Apache-2.0"
[lib]
name = "boa_cat"
path = "src/lib.rs"
[[test]]
name = "arithmetic"
path = "tests/arithmetic.rs"
[[test]]
name = "control_flow"
path = "tests/control_flow.rs"
[[test]]
name = "functions"
path = "tests/functions.rs"
[[test]]
name = "natives"
path = "tests/natives.rs"
[[test]]
name = "objects"
path = "tests/objects.rs"
[dependencies.comp-cat-rs]
version = "0.5"
[dependencies.ecma-lex-cat]
version = "0.1"
[dependencies.ecma-parse-cat]
version = "0.1"
[dependencies.ecma-syntax-cat]
version = "0.1"
[dev-dependencies.proptest]
version = "1"
[lints.clippy]
manual_map = "warn"
needless_pass_by_value = "warn"
[lints.clippy.all]
level = "deny"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1