ast-types
Advanced tools
Comparing version 0.9.14 to 0.10.0
109
def/babel.js
module.exports = function (fork) { | ||
fork.use(require("./es7")); | ||
var types = fork.use(require("../lib/types")); | ||
var defaults = fork.use(require("../lib/shared")).defaults; | ||
var def = types.Type.def; | ||
var or = types.Type.or; | ||
def("Noop") | ||
.bases("Node") | ||
.build(); | ||
def("DoExpression") | ||
.bases("Expression") | ||
.build("body") | ||
.field("body", [def("Statement")]); | ||
def("Super") | ||
.bases("Expression") | ||
.build(); | ||
def("BindExpression") | ||
.bases("Expression") | ||
.build("object", "callee") | ||
.field("object", or(def("Expression"), null)) | ||
.field("callee", def("Expression")); | ||
def("Decorator") | ||
.bases("Node") | ||
.build("expression") | ||
.field("expression", def("Expression")); | ||
def("Property") | ||
.field("decorators", | ||
or([def("Decorator")], null), | ||
defaults["null"]); | ||
def("MethodDefinition") | ||
.field("decorators", | ||
or([def("Decorator")], null), | ||
defaults["null"]); | ||
def("MetaProperty") | ||
.bases("Expression") | ||
.build("meta", "property") | ||
.field("meta", def("Identifier")) | ||
.field("property", def("Identifier")); | ||
def("ParenthesizedExpression") | ||
.bases("Expression") | ||
.build("expression") | ||
.field("expression", def("Expression")); | ||
def("ImportSpecifier") | ||
.bases("ModuleSpecifier") | ||
.build("imported", "local") | ||
.field("imported", def("Identifier")); | ||
def("ImportDefaultSpecifier") | ||
.bases("ModuleSpecifier") | ||
.build("local"); | ||
def("ImportNamespaceSpecifier") | ||
.bases("ModuleSpecifier") | ||
.build("local"); | ||
def("ExportDefaultDeclaration") | ||
.bases("Declaration") | ||
.build("declaration") | ||
.field("declaration", or(def("Declaration"), def("Expression"))); | ||
def("ExportNamedDeclaration") | ||
.bases("Declaration") | ||
.build("declaration", "specifiers", "source") | ||
.field("declaration", or(def("Declaration"), null)) | ||
.field("specifiers", [def("ExportSpecifier")], defaults.emptyArray) | ||
.field("source", or(def("Literal"), null), defaults["null"]); | ||
def("ExportSpecifier") | ||
.bases("ModuleSpecifier") | ||
.build("local", "exported") | ||
.field("exported", def("Identifier")); | ||
def("ExportNamespaceSpecifier") | ||
.bases("Specifier") | ||
.build("exported") | ||
.field("exported", def("Identifier")); | ||
def("ExportDefaultSpecifier") | ||
.bases("Specifier") | ||
.build("exported") | ||
.field("exported", def("Identifier")); | ||
def("ExportAllDeclaration") | ||
.bases("Declaration") | ||
.build("exported", "source") | ||
.field("exported", or(def("Identifier"), null)) | ||
.field("source", def("Literal")); | ||
def("CommentBlock") | ||
.bases("Comment") | ||
.build("value", /*optional:*/ "leading", "trailing"); | ||
def("CommentLine") | ||
.bases("Comment") | ||
.build("value", /*optional:*/ "leading", "trailing"); | ||
}; | ||
fork.use(require("./babel-core")); | ||
fork.use(require("./flow")); | ||
}; |
27
main.js
module.exports = require('./fork')([ | ||
// This core module of AST types captures ES5 as it is parsed today by | ||
// git://github.com/ariya/esprima.git#master. | ||
require("./def/core"), | ||
// This core module of AST types captures ES5 as it is parsed today by | ||
// git://github.com/ariya/esprima.git#master. | ||
require("./def/core"), | ||
// Feel free to add to or remove from this list of extension modules to | ||
// configure the precise type hierarchy that you need. | ||
require("./def/es6"), | ||
require("./def/es7"), | ||
require("./def/mozilla"), | ||
require("./def/e4x"), | ||
require("./def/jsx"), | ||
require("./def/flow"), | ||
require("./def/esprima"), | ||
require("./def/babel"), | ||
require("./def/babel6") | ||
// Feel free to add to or remove from this list of extension modules to | ||
// configure the precise type hierarchy that you need. | ||
require("./def/es6"), | ||
require("./def/es7"), | ||
require("./def/mozilla"), | ||
require("./def/e4x"), | ||
require("./def/jsx"), | ||
require("./def/flow"), | ||
require("./def/esprima"), | ||
require("./def/babel") | ||
]); |
@@ -21,3 +21,3 @@ { | ||
], | ||
"version": "0.9.14", | ||
"version": "0.10.0", | ||
"homepage": "http://github.com/benjamn/ast-types", | ||
@@ -36,7 +36,7 @@ "repository": { | ||
"babel-types": "^6.26.0", | ||
"babylon": "^6.16.1", | ||
"babylon": "^7.0.0-beta.31", | ||
"espree": "^3.1.7", | ||
"esprima": "~4.0.0", | ||
"esprima-fb": "~14001.1.0-dev-harmony-fb", | ||
"mocha": "^3.4.2", | ||
"mocha": "^4.0.1", | ||
"reify": "^0.12.0" | ||
@@ -43,0 +43,0 @@ }, |
3610
156382
23