Changes between Version 5 and Version 6 of WebIDLToDo
- Timestamp:
- Jun 28, 2017, 6:43:49 PM (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WebIDLToDo
v5 v6 4 4 - Improve the quality of the perl IDL code generators 5 5 - Use IDL infrastructure to add automatic test case generation 6 - Reduce the code size of the generated code. 7 - Reduce the compile time of the generated code. 8 - Provide the fastest bindings layer possible. 9 6 10 7 11 [[BR]] 8 12 9 13 == Tasks: == 10 11 14 - Add support for WebIDL namespaces 12 15 - Add support for setlike<> declarations … … 19 22 - Add better exception messages for all conversions 20 23 - Replace use of __is_polymorphic with std::is_polymorphic 24 - Add support for making an attribute conditionally readonly at compile time (see JSAudioTrackCustom). 25 - Add extended attribute for marking an argument to an operation as also being the return value (needed for Crypto.getRandomValues, Node.insertBefore, Node.replaceChild, Node.removeChild, and Node.appendChild) 21 26 - Replace use of RuntimeEnabledFeatures with Settings based conditionals 22 27 - Add support for conditionally exposing functions / attributes based on [Exposed] extended attribute (see NavigatorID.idl and XMLHttpRequest.idl for examples) 23 28 - Replace explicit conversion from Identifier to String or AtomicString (see uses of propertyNameToString/propertyNameToAtomicString in the generator) with a class that can convert most efficiently based on the type of the receiver. 24 29 - Replace explicit conversion from JSString to AtomicString via the [AtomicString] and [ExistingAtomicString] type modifiers with a class that can convert most efficiently based on the type of the receiver. 30 31 [[BR]] 32 33 == DOMJIT Specific Tasks: == 34 - Utilize DOMJIT to hoist attribute and operation prologues into JSC (https://webkit.org/b/171637) 35 - Attempt to reduce duplications by having 'safe' bindings functions call the 'unsafe' ones where possible. 36 25 37 26 38 [[BR]] … … 36 48 - Generate the enums that correspond to IDL enums 37 49 - Generate the abstract base classes that correspond to IDL callbacks 50 - Replace trampoline/body model with trampoline/lambda. 51 38 52 39 53 [[BR]]