You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

es7.js 1.4KB

123456789101112131415161718192021222324252627282930313233343536
  1. "use strict";;
  2. var __importDefault = (this && this.__importDefault) || function (mod) {
  3. return (mod && mod.__esModule) ? mod : { "default": mod };
  4. };
  5. Object.defineProperty(exports, "__esModule", { value: true });
  6. var es6_1 = __importDefault(require("./es6"));
  7. var types_1 = __importDefault(require("../lib/types"));
  8. var shared_1 = __importDefault(require("../lib/shared"));
  9. function default_1(fork) {
  10. fork.use(es6_1.default);
  11. var types = fork.use(types_1.default);
  12. var def = types.Type.def;
  13. var or = types.Type.or;
  14. var defaults = fork.use(shared_1.default).defaults;
  15. def("Function")
  16. .field("async", Boolean, defaults["false"]);
  17. def("SpreadProperty")
  18. .bases("Node")
  19. .build("argument")
  20. .field("argument", def("Expression"));
  21. def("ObjectExpression")
  22. .field("properties", [or(def("Property"), def("SpreadProperty"), def("SpreadElement"))]);
  23. def("SpreadPropertyPattern")
  24. .bases("Pattern")
  25. .build("argument")
  26. .field("argument", def("Pattern"));
  27. def("ObjectPattern")
  28. .field("properties", [or(def("Property"), def("PropertyPattern"), def("SpreadPropertyPattern"))]);
  29. def("AwaitExpression")
  30. .bases("Expression")
  31. .build("argument", "all")
  32. .field("argument", or(def("Expression"), null))
  33. .field("all", Boolean, defaults["false"]);
  34. }
  35. exports.default = default_1;
  36. module.exports = exports["default"];