diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2023-10-14 15:31:11 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2023-10-14 15:31:11 +0800 |
| commit | aa773172311dcada759dfbaac485f4bc6e00bc21 (patch) | |
| tree | ca6d9a5eff3ab8f689f9acb4f0df791d9486813d /node_modules/@babel/helper-builder-binary-assignment-operator-visitor/lib/index.js | |
| parent | c5a5384e846f242e901e859fe600d695d8990a9a (diff) | |
added babel
Diffstat (limited to 'node_modules/@babel/helper-builder-binary-assignment-operator-visitor/lib/index.js')
| -rw-r--r-- | node_modules/@babel/helper-builder-binary-assignment-operator-visitor/lib/index.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/node_modules/@babel/helper-builder-binary-assignment-operator-visitor/lib/index.js b/node_modules/@babel/helper-builder-binary-assignment-operator-visitor/lib/index.js new file mode 100644 index 00000000..d4d28127 --- /dev/null +++ b/node_modules/@babel/helper-builder-binary-assignment-operator-visitor/lib/index.js @@ -0,0 +1,42 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = _default; +var _t = require("@babel/types"); +var _explodeAssignableExpression = require("./explode-assignable-expression.js"); +const { + assignmentExpression, + sequenceExpression +} = _t; +function _default(opts) { + const { + build, + operator + } = opts; + const visitor = { + AssignmentExpression(path) { + const { + node, + scope + } = path; + if (node.operator !== operator + "=") return; + const nodes = []; + const exploded = (0, _explodeAssignableExpression.default)(node.left, nodes, scope); + nodes.push(assignmentExpression("=", exploded.ref, build(exploded.uid, node.right))); + path.replaceWith(sequenceExpression(nodes)); + }, + BinaryExpression(path) { + const { + node + } = path; + if (node.operator === operator) { + path.replaceWith(build(node.left, node.right)); + } + } + }; + return visitor; +} + +//# sourceMappingURL=index.js.map |
