Bug 238945 - [IDL] Make JSGenerateToJSObject the default behavior
Summary: [IDL] Make JSGenerateToJSObject the default behavior
Status: ASSIGNED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Bindings (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Chris Dumez
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-04-07 10:48 PDT by Chris Dumez
Modified: 2022-04-14 10:49 PDT (History)
31 users (show)

See Also:


Attachments
WIP Patch (1.04 KB, patch)
2022-04-07 10:49 PDT, Chris Dumez
ews-feeder: commit-queue-
Details | Formatted Diff | Diff
WIP Patch (32.45 KB, patch)
2022-04-07 11:05 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff
WIP Patch (32.59 KB, patch)
2022-04-07 11:09 PDT, Chris Dumez
ews-feeder: commit-queue-
Details | Formatted Diff | Diff
WIP Patch (32.63 KB, patch)
2022-04-07 11:28 PDT, Chris Dumez
ews-feeder: commit-queue-
Details | Formatted Diff | Diff
WIP Patch (46.65 KB, patch)
2022-04-07 12:56 PDT, Chris Dumez
ews-feeder: commit-queue-
Details | Formatted Diff | Diff
WIP Patch (50.26 KB, patch)
2022-04-07 16:36 PDT, Chris Dumez
ews-feeder: commit-queue-
Details | Formatted Diff | Diff
WIP Patch (51.61 KB, patch)
2022-04-07 16:43 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff
WIP Patch (51.87 KB, patch)
2022-04-07 16:52 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff
WIP Patch (64.65 KB, patch)
2022-04-07 17:21 PDT, Chris Dumez
ews-feeder: commit-queue-
Details | Formatted Diff | Diff
WIP Patch (68.97 KB, patch)
2022-04-07 19:02 PDT, Chris Dumez
ews-feeder: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Dumez 2022-04-07 10:48:36 PDT
Make JSGenerateToJSObject the default behavior and always generate the toJS() function, even if the interface has a parent.
I verified locally that it doesn't increase the size of the WebCore binary.

Missing JSGenerateToJSObject the IDL can lead to hard to diagnose crashes / bugs when implementing new Web APIs.
Having a toJS() for the subclass is also better for performance than relying on the toJS() from a base class which has to do type checking.
Comment 1 Chris Dumez 2022-04-07 10:49:41 PDT
Created attachment 456941 [details]
WIP Patch
Comment 2 Chris Dumez 2022-04-07 11:05:29 PDT
Created attachment 456944 [details]
WIP Patch
Comment 3 Chris Dumez 2022-04-07 11:09:17 PDT
Created attachment 456947 [details]
WIP Patch
Comment 4 Chris Dumez 2022-04-07 11:28:06 PDT
Created attachment 456951 [details]
WIP Patch
Comment 5 Chris Dumez 2022-04-07 12:56:01 PDT
Created attachment 456957 [details]
WIP Patch
Comment 6 Chris Dumez 2022-04-07 16:36:34 PDT
Created attachment 456985 [details]
WIP Patch
Comment 7 Chris Dumez 2022-04-07 16:43:50 PDT
Created attachment 456989 [details]
WIP Patch
Comment 8 Chris Dumez 2022-04-07 16:52:48 PDT
Created attachment 456990 [details]
WIP Patch
Comment 9 Chris Dumez 2022-04-07 17:21:02 PDT
Created attachment 456996 [details]
WIP Patch
Comment 10 Chris Dumez 2022-04-07 19:02:06 PDT
Created attachment 457003 [details]
WIP Patch
Comment 11 Radar WebKit Bug Importer 2022-04-14 10:49:14 PDT
<rdar://problem/91763968>