swc/macros/ast_node/Cargo.toml
강동윤 e1764f907b [WIP] Make ast nodes contain span
* `struct Expr` + `enum ExprKind` -> `enum Expr`

`Expr` / `ExprKind` approach does not work well with recursive
 processing based on the type system because we can't access common
 fields like span while processing child node like `MemberExpr`.

As ast processing is inherently recursive, we should use a
 recursive-friendly approach.

 * `#[derive(FromVariants)]`
It creates lots of `From<T>` to help using ast enums as a real sum type.

 * `#[derive(Spanned)]`

Inspired by https://docs.rs/syn/0.12.13/syn/spanned/trait.Spanned.html

It does not handle attributes yet.

 * Parser is not updated yet.
2018-03-03 19:37:01 +09:00

22 lines
438 B
TOML

[package]
name = "ast_node"
version = "0.1.0"
authors = ["강동윤 <kdy1@outlook.kr>"]
[lib]
proc-macro = true
[dependencies]
swc_macros_common = { path = "../common" }
pmutil = "0.1"
proc-macro2 = { version = "0.2", features = ["nightly"] }
quote = "0.4"
[dependencies.syn]
version = "0.12"
features = ["derive", "fold", "parsing", "printing"]
[dev-dependencies]
swc_macros = { path = "../" }
swc_common = { path = "../../common" }