-
Notifications
You must be signed in to change notification settings - Fork 74
Open
Labels
addition/proposalNew features or enhancementsNew features or enhancementsneeds implementer interestMoving the issue forward requires implementers to express interestMoving the issue forward requires implementers to express interest
Description
What problem are you trying to solve?
I propose the following methods should integrate with the explicit resource management proposal that has now shipped in several browsers:
groupgroupCollapsedprofiletime
These methods should return a disposable object so that instead of e.g.
console.group("my group");
console.time("my label");
...
console.timeEnd("my label");
console.groupEnd();user could write
using group = console.group("my group");
using time = console.time("my label");
...
// groups and times are automatically ended at the end of the scopeWhat solutions exist today?
Explicit console.*End() methods.
How would you solve it?
The start methods should return an object that has a single Symbol.dispose property. This property is mapped to the explicit methods with the same label as the starting method.
Anything else?
There is a web-compat risk in changing the return type from current undefined to an object, as some code out there might be relying on it being undefined / false-y at the moment.
If so, we might have to either
- Introduce an option object, so one writes
console.group({ label: "my group", disposable: true })if they want to get a disposable object. - Introduce new dedicated methods for the disposable counterparts of all existing methods in the list above.
lukewarlow and terinjokesrarous, remcohaszing and RReverser
Metadata
Metadata
Assignees
Labels
addition/proposalNew features or enhancementsNew features or enhancementsneeds implementer interestMoving the issue forward requires implementers to express interestMoving the issue forward requires implementers to express interest