-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[dartdevc] Destructure optional positional parameters
Use ES6 destructuring to handle optional positional arguments more compactly. Note, this doesn't actually change calling convention in DDC, just how optionals are handled at the callee. Given Dart: void foo(arg1, arg2, [opt1, opt2 = def2]) { ... } old JS: function foo(arg1, arg2, opt1, opt2) { if (opt1 === void 0) opt1 = null; if (opt2 === void 0) opt2 = 42; ... } new JS: function foo(arg1, arg2, opt1 = null, opt2 = def2) { ... } We should be able to similar with named params. Change-Id: I8491a4517d729ab1dec40c1ed2073b9c33cdffe0 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124107 Reviewed-by: Mark Zhou <markzipan@google.com> Commit-Queue: Vijay Menon <vsm@google.com>
- Loading branch information
Showing
1 changed file
with
24 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters