diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2026-05-18 23:10:59 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2026-05-18 23:41:44 +0800 |
| commit | fc87c009806dcc98867f6b58efe29b042aa01dee (patch) | |
| tree | 8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/@babel/traverse/lib/scope/binding.js | |
| parent | 3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff) | |
node: updatemain
Diffstat (limited to 'node_modules/@babel/traverse/lib/scope/binding.js')
| -rw-r--r-- | node_modules/@babel/traverse/lib/scope/binding.js | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/node_modules/@babel/traverse/lib/scope/binding.js b/node_modules/@babel/traverse/lib/scope/binding.js deleted file mode 100644 index 90a6d9b8..00000000 --- a/node_modules/@babel/traverse/lib/scope/binding.js +++ /dev/null @@ -1,83 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; -class Binding { - constructor({ - identifier, - scope, - path, - kind - }) { - this.identifier = void 0; - this.scope = void 0; - this.path = void 0; - this.kind = void 0; - this.constantViolations = []; - this.constant = true; - this.referencePaths = []; - this.referenced = false; - this.references = 0; - this.identifier = identifier; - this.scope = scope; - this.path = path; - this.kind = kind; - if ((kind === "var" || kind === "hoisted") && isDeclaredInLoop(path)) { - this.reassign(path); - } - this.clearValue(); - } - deoptValue() { - this.clearValue(); - this.hasDeoptedValue = true; - } - setValue(value) { - if (this.hasDeoptedValue) return; - this.hasValue = true; - this.value = value; - } - clearValue() { - this.hasDeoptedValue = false; - this.hasValue = false; - this.value = null; - } - reassign(path) { - this.constant = false; - if (this.constantViolations.includes(path)) { - return; - } - this.constantViolations.push(path); - } - reference(path) { - if (this.referencePaths.includes(path)) { - return; - } - this.referenced = true; - this.references++; - this.referencePaths.push(path); - } - dereference() { - this.references--; - this.referenced = !!this.references; - } -} -exports.default = Binding; -function isDeclaredInLoop(path) { - for (let { - parentPath, - key - } = path; parentPath; ({ - parentPath, - key - } = parentPath)) { - if (parentPath.isFunctionParent()) return false; - if (parentPath.isWhile() || parentPath.isForXStatement() || parentPath.isForStatement() && key === "body") { - return true; - } - } - return false; -} - -//# sourceMappingURL=binding.js.map |
