From 69a908ae8c0cda54c1dc3fec62b00a476683e8cf Mon Sep 17 00:00:00 2001 From: mAAdhaTTah Date: Sat, 13 Jul 2019 10:05:38 -0400 Subject: [PATCH] Add Pipeline nodes to ast.spec [skip ci] --- packages/babel-parser/ast/spec.md | 48 +++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/packages/babel-parser/ast/spec.md b/packages/babel-parser/ast/spec.md index 34c04919cbd0..d1b1a51ca733 100644 --- a/packages/babel-parser/ast/spec.md +++ b/packages/babel-parser/ast/spec.md @@ -898,6 +898,54 @@ interface BindExpression <: Expression { If `object` is `null`, then `callee` should be a `MemberExpression`. +### Pipeline + +These nodes are used by the Smart Pipeline to determine the type of the expression in a Pipeline Operator Expression. The F# Pipeline uses simple `BinaryExpression`s. + +#### PipelineBody + +```js +interface PipelineBody <: NodeBase { + type: "PipelineBody"; +} +``` + +#### PipelineBareFunctionBody + +```js +interface PipelineBody <: NodeBase { + type: "PipelineBareFunctionBody"; + callee: Expression; +} +``` + +#### PipelineBareConstructorBody + +```js +interface PipelineBareConstructorBody <: NodeBase { + type: "PipelineBareConstructorBody"; + callee: Expression; +} +``` + +#### PipelineBareAwaitedFunctionBody + +```js +interface PipelineBareConstructorBody <: NodeBase { + type: "PipelineTopicBody"; + expression: Expression; +} +``` + +#### PipelineTopicBody + +```js +interface PipelineBareConstructorBody <: NodeBase { + type: "PipelineBareAwaitedFunctionBody"; + callee: Expression; +} +``` + ## ConditionalExpression ```js