From be9be86919288ea670c49d2480d2b915adbaae88 Mon Sep 17 00:00:00 2001 From: Shuhei Kagawa Date: Tue, 17 May 2016 05:48:20 +0900 Subject: [PATCH] Add decorators to argument types (#3470) --- packages/babel-types/src/definitions/core.js | 6 ++++++ packages/babel-types/src/definitions/es2015.js | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/packages/babel-types/src/definitions/core.js b/packages/babel-types/src/definitions/core.js index 74c29b7cfc..19a37158a7 100644 --- a/packages/babel-types/src/definitions/core.js +++ b/packages/babel-types/src/definitions/core.js @@ -311,6 +311,9 @@ defineType("Identifier", { // todo } } + }, + decorators: { + validate: chain(assertValueType("array"), assertEach(assertNodeType("Decorator"))) } } }); @@ -544,6 +547,9 @@ defineType("RestElement", { fields: { argument: { validate: assertNodeType("LVal") + }, + decorators: { + validate: chain(assertValueType("array"), assertEach(assertNodeType("Decorator"))) } } }); diff --git a/packages/babel-types/src/definitions/es2015.js b/packages/babel-types/src/definitions/es2015.js index 87512202d4..1ba6a77b7f 100644 --- a/packages/babel-types/src/definitions/es2015.js +++ b/packages/babel-types/src/definitions/es2015.js @@ -17,6 +17,9 @@ defineType("AssignmentPattern", { }, right: { validate: assertNodeType("Expression") + }, + decorators: { + validate: chain(assertValueType("array"), assertEach(assertNodeType("Decorator"))) } } }); @@ -27,6 +30,9 @@ defineType("ArrayPattern", { fields: { elements: { validate: chain(assertValueType("array"), assertEach(assertNodeType("Expression"))) + }, + decorators: { + validate: chain(assertValueType("array"), assertEach(assertNodeType("Decorator"))) } } }); @@ -285,6 +291,9 @@ defineType("ObjectPattern", { fields: { properties: { validate: chain(assertValueType("array"), assertEach(assertNodeType("RestProperty", "Property"))) + }, + decorators: { + validate: chain(assertValueType("array"), assertEach(assertNodeType("Decorator"))) } } });