Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .changeset/gentle-parrots-heal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
swc_ecma_transforms_proposal: patch
swc_core: patch
---

fix(es/proposal): fix declarations for explicit-resource-management
6 changes: 3 additions & 3 deletions crates/swc/tests/fixture/issues-8xxx/8020/output/1.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ try {
const foo = _ts_add_disposable_resource._(env, null, false);
const bar = 1;
console.log(baz());
function baz() {
return bar;
}
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
_ts_dispose_resources._(env);
}
function baz() {
return bar;
}
2 changes: 1 addition & 1 deletion crates/swc/tests/fixture/issues-8xxx/8629/output/1.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ const env = {
try {
var _computedKey;
_computedKey = Symbol.dispose;
const _disposable = _ts_add_disposable_resource(env, new Disposable(), false);
var _disposable = _ts_add_disposable_resource(env, new Disposable(), false);
console.log('ok');
} catch (e) {
env.error = e;
Expand Down
2 changes: 1 addition & 1 deletion crates/swc/tests/fixture/issues-8xxx/8629/output/2.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const env = {
hasError: false
};
try {
const _disposable = _ts_add_disposable_resource(env, new Disposable(), false);
var _disposable = _ts_add_disposable_resource(env, new Disposable(), false);
console.log('ok');
} catch (e) {
env.error = e;
Expand Down
6 changes: 3 additions & 3 deletions crates/swc/tests/fixture/issues-8xxx/8895/output/1.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@ function main() {
};
try {
const file = _ts_add_disposable_resource._(env, new File(), false);
function readFile() {
file.read();
}
readFile();
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
_ts_dispose_resources._(env);
}
function readFile() {
file.read();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,67 +10,12 @@ const env = {
hasError: false
};
try {
const d1 = _ts_add_disposable_resource(env, {
var d1 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
function af() {
return _af.apply(this, arguments);
}
function _af() {
_af = _async_to_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d3 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield null;
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield result;
}
});
return _af.apply(this, arguments);
}
function ag() {
return _ag.apply(this, arguments);
}
function _ag() {
_ag = _wrap_async_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d5 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield;
yield _await_async_generator(null);
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield _await_async_generator(result);
}
});
return _ag.apply(this, arguments);
}
const a = /*#__PURE__*/ function() {
var a = /*#__PURE__*/ function() {
var _ref = _async_to_generator(function*() {
const env = {
stack: [],
Expand All @@ -95,77 +40,6 @@ try {
return _ref.apply(this, arguments);
};
}();
class C1 {
am() {
return _async_to_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d13 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield null;
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield result;
}
})();
}
ag() {
return _wrap_async_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d15 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield;
yield _await_async_generator(null);
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield _await_async_generator(result);
}
})();
}
constructor(){
this.a = /*#__PURE__*/ _async_to_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d7 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield result;
}
});
}
}
{
const env = {
stack: [],
Expand Down Expand Up @@ -457,4 +331,130 @@ try {
const result = _ts_dispose_resources(env);
if (result) await result;
}
function af() {
return _af.apply(this, arguments);
}
function _af() {
_af = _async_to_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d3 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield null;
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield result;
}
});
return _af.apply(this, arguments);
}
function ag() {
return _ag.apply(this, arguments);
}
function _ag() {
_ag = _wrap_async_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d5 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield;
yield _await_async_generator(null);
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield _await_async_generator(result);
}
});
return _ag.apply(this, arguments);
}
class C1 {
am() {
return _async_to_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d13 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield null;
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield result;
}
})();
}
ag() {
return _wrap_async_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d15 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
yield;
yield _await_async_generator(null);
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield _await_async_generator(result);
}
})();
}
constructor(){
this.a = /*#__PURE__*/ _async_to_generator(function*() {
const env = {
stack: [],
error: void 0,
hasError: false
};
try {
const d7 = _ts_add_disposable_resource(env, {
[Symbol.asyncDispose] () {
return _async_to_generator(function*() {})();
}
}, true);
} catch (e) {
env.error = e;
env.hasError = true;
} finally{
const result = _ts_dispose_resources(env);
if (result) yield result;
}
});
}
}
export { };
Loading
Loading