Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Issue 2730183003: bindings: Add C++ versions of WebIDL types and generalize NativeValueTraits. (Closed)

Created:
3 years, 9 months ago by Raphael Kubo da Costa (rakuco)
Modified:
3 years, 9 months ago
Reviewers:
haraken, bashi, Yuki
CC:
chromium-reviews, michaeln, jsbell+serviceworker_chromium.org, shimazu+serviceworker_chromium.org, iclelland+watch_chromuim.org, serviceworker-reviews, chasej+watch_chromium.org, nhiroki, kinuko+serviceworker, blink-reviews-bindings_chromium.org, blink-reviews, horo+watch_chromium.org, falken+watch_chromium.org, tzik
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

bindings: Add C++ versions of WebIDL types and generalize NativeValueTraits. This being introduced primarily in order to support the record<K,V> WebIDL type, as it needs to be able to convert arbitrary JS objects into their C++ counterparts without all the information available to the IDL code generator at build-time. The changes are two-fold: 1. IDLTypes.h contains C++ classes corresponding to the basic WebIDL types. At the moment they are limited to booleans, numbers, strings, promises and sequences. All classes inherit from IDLBase, and provide information about their corresponding C++ types (e.g. an IDLOctet corresponds to an uint8_t). 2. NativeValueTraits was expanded to cope with both the existing template specializations which essentially have the type one expects nativeValue() to return (e.g. AtomicString, double etc) as well as the new variations introduced for the IDL types above: when NativeValueTraits is specialized for an IDLBase-based type, all type information is derived from it. The idea behind 1) and 2) is that NativeValueTraits<T>::nativeValue() should be a standard interface for converting any JS value to C++ by interpreting the JS value as a T. Wherever possible, v8_types.py now generates invocations to NativeValueTraits<T>::nativeValue() instead of direct calls to type-specific conversion functions. It was not done when the conversion functions themselves take arguments that do not match nativeValue()'s signature. For example, converting to a Promise or an IDL interface does not require an ExceptionState, so using nativeValue() would introduce unnecessary overhead by requiring an ExceptionState to be created and passed. BUG=685754 R=bashi@chromium.org,haraken@chromium.org,yukishiino@chromium.org Review-Url: https://codereview.chromium.org/2730183003 Cr-Commit-Position: refs/heads/master@{#455045} Committed: https://chromium.googlesource.com/chromium/src/+/504550f038ae920fbc2bee9797f298189262e4fc

Patch Set 1 #

Total comments: 17

Patch Set 2 : Patch v2 #

Patch Set 3 : Remove unnecessary include #

Total comments: 30

Patch Set 4 : Remove IDLTypeHelpers and SFINAEHelper. Add NativeValueTraits to IDL interfaces #

Patch Set 5 : Fix IDLSequence checks and make them easier to understand #

Total comments: 2

Patch Set 6 : Move specialization for SerializedScriptValue to the appropriate header #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1584 lines, -285 lines) Patch
M third_party/WebKit/Source/bindings/bindings.gni View 1 3 chunks +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/Dictionary.h View 1 chunk +2 lines, -1 line 0 comments Download
A third_party/WebKit/Source/bindings/core/v8/IDLTypes.h View 1 2 3 4 1 chunk +80 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/bindings/core/v8/IDLTypesBase.h View 1 2 3 1 chunk +29 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/bindings/core/v8/IDLTypesTest.cpp View 1 2 3 1 chunk +122 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h View 1 2 3 2 chunks +52 lines, -7 lines 0 comments Download
A third_party/WebKit/Source/bindings/core/v8/NativeValueTraitsImpl.h View 1 2 3 1 chunk +312 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/bindings/core/v8/NativeValueTraitsTest.cpp View 1 chunk +28 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/SerializedScriptValue.h View 1 2 3 4 5 2 chunks +13 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/V8Binding.h View 1 2 3 4 5 2 chunks +6 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/scripts/v8_callback_function.py View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/scripts/v8_dictionary.py View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/scripts/v8_interface.py View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/scripts/v8_types.py View 1 2 3 4 chunks +18 lines, -20 lines 0 comments Download
M third_party/WebKit/Source/bindings/scripts/v8_union.py View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/callback_function.cpp.tmpl View 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/callback_function.h.tmpl View 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/dictionary_v8.h.tmpl View 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/interface.cpp.tmpl View 1 2 3 1 chunk +9 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/interface.h.tmpl View 1 2 3 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/interface_base.cpp.tmpl View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/union_container.h.tmpl View 1 chunk +6 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/AnyCallbackFunctionOptionalAnyArg.h View 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/AnyCallbackFunctionOptionalAnyArg.cpp View 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/ArrayBufferOrArrayBufferViewOrDictionary.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/ArrayBufferOrArrayBufferViewOrDictionary.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/BooleanOrStringOrUnrestrictedDouble.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/BooleanOrStringOrUnrestrictedDouble.cpp View 1 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/DoubleOrString.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/DoubleOrString.cpp View 1 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/LongCallbackFunction.h View 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/LongCallbackFunction.cpp View 1 3 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/LongOrTestDictionary.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/LongOrTestDictionary.cpp View 1 3 chunks +4 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/NodeOrNodeList.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringOrArrayBufferOrArrayBufferView.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringOrArrayBufferOrArrayBufferView.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringOrDouble.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringOrDouble.cpp View 1 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringOrStringSequence.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringOrStringSequence.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringSequenceCallbackFunctionLongSequenceArg.h View 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/StringSequenceCallbackFunctionLongSequenceArg.cpp View 1 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestEnumOrDouble.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestEnumOrDouble.cpp View 1 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestInterface2OrUint8Array.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestInterfaceGarbageCollectedOrString.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestInterfaceGarbageCollectedOrString.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestInterfaceOrLong.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestInterfaceOrLong.cpp View 1 3 chunks +4 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/TestInterfaceOrTestInterfaceEmpty.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/UnrestrictedDoubleOrString.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/UnrestrictedDoubleOrString.cpp View 1 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8ArrayBuffer.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8ArrayBuffer.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8ArrayBufferView.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8ArrayBufferView.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8DataView.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8DataView.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8SVGTestInterface.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8SVGTestInterface.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestCallbackFunctions.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestCallbackFunctions.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestCallbackInterface.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestConstants.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestConstants.cpp View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionary.h View 2 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionary.cpp View 1 10 chunks +11 lines, -9 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionaryDerived.h View 2 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionaryDerived.cpp View 1 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestException.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestException.cpp View 1 2 3 3 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexed.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexed.cpp View 1 2 3 3 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedGlobal.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedGlobal.cpp View 1 2 3 3 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedPrimaryGlobal.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedPrimaryGlobal.cpp View 1 2 3 3 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface.cpp View 1 2 3 21 chunks +27 lines, -21 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface2.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface2.cpp View 1 2 3 6 chunks +10 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface3.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface3.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceCheckSecurity.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceCheckSecurity.cpp View 1 2 3 5 chunks +9 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp View 1 2 3 5 chunks +9 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor2.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor2.cpp View 1 2 3 5 chunks +9 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor3.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor3.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor4.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor4.cpp View 1 2 3 3 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceCustomConstructor.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceCustomConstructor.cpp View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceDocument.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceDocument.cpp View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEmpty.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEmpty.cpp View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventInit.h View 2 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventInit.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventInitConstructor.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventInitConstructor.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventTarget.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventTarget.cpp View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceGarbageCollected.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceGarbageCollected.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNamedConstructor.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNamedConstructor.cpp View 1 2 3 3 chunks +8 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNamedConstructor2.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNamedConstructor2.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNode.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNode.cpp View 1 2 3 4 chunks +8 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceOriginTrialEnabled.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceOriginTrialEnabled.cpp View 1 2 3 6 chunks +11 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceSecureContext.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceSecureContext.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestNode.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestNode.cpp View 1 2 3 3 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp View 1 2 3 141 chunks +149 lines, -143 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestPermissiveDictionary.h View 2 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestPermissiveDictionary.cpp View 1 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestSpecialOperations.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestSpecialOperations.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestSpecialOperationsNotEnumerable.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestSpecialOperationsNotEnumerable.cpp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestTypedefs.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestTypedefs.cpp View 1 2 3 4 chunks +8 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8Uint8ClampedArray.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8Uint8ClampedArray.cpp View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/VoidCallbackFunction.h View 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/VoidCallbackFunction.cpp View 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/VoidCallbackFunctionInterfaceArg.h View 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/VoidCallbackFunctionInterfaceArg.cpp View 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/VoidCallbackFunctionTypedef.h View 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/VoidCallbackFunctionTypedef.cpp View 1 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/BooleanOrString.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/BooleanOrString.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterface2Partial.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterface2Partial.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterface5.h View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterface5.cpp View 1 2 3 11 chunks +17 lines, -11 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterfacePartial.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterfacePartial.cpp View 1 3 chunks +4 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/VoidCallbackFunctionModules.h View 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/VoidCallbackFunctionModules.cpp View 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/serviceworkers/ForeignFetchRespondWithObserver.cpp View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 41 (12 generated)
Raphael Kubo da Costa (rakuco)
PTAL. This implements Yuki's suggestion in https://codereview.chromium.org/2709983004/ to split up the work, with the twist ...
3 years, 9 months ago (2017-03-04 18:55:40 UTC) #1
haraken
yukishiino: Would you take a look at this?
3 years, 9 months ago (2017-03-05 07:08:27 UTC) #2
Yuki
This CL looks great! Makes the codebase a lot cleaner. I have minor comments only. ...
3 years, 9 months ago (2017-03-06 07:39:42 UTC) #3
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/IDLTypes.h File third_party/WebKit/Source/bindings/core/v8/IDLTypes.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/IDLTypes.h#newcode56 third_party/WebKit/Source/bindings/core/v8/IDLTypes.h:56: struct MaybeWrapped { On 2017/03/06 07:39:42, Yuki(slow_til_mar08) wrote: > ...
3 years, 9 months ago (2017-03-06 07:47:22 UTC) #4
Yuki
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/IDLTypes.h File third_party/WebKit/Source/bindings/core/v8/IDLTypes.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/IDLTypes.h#newcode56 third_party/WebKit/Source/bindings/core/v8/IDLTypes.h:56: struct MaybeWrapped { On 2017/03/06 07:47:22, Raphael Kubo da ...
3 years, 9 months ago (2017-03-06 07:58:19 UTC) #5
bashi
I'll defer to yukishiino@'s review. I just want to say this is a great CL ...
3 years, 9 months ago (2017-03-06 08:04:54 UTC) #6
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode60 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:60: template <typename T, typename... Args> On 2017/03/06 07:39:42, Yuki(slow_til_mar08) ...
3 years, 9 months ago (2017-03-06 08:06:07 UTC) #7
Yuki
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode26 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:26: template <typename T, typename U = void> Why do ...
3 years, 9 months ago (2017-03-06 08:14:19 UTC) #8
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode26 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:26: template <typename T, typename U = void> On 2017/03/06 ...
3 years, 9 months ago (2017-03-06 08:36:52 UTC) #9
Yuki
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode26 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:26: template <typename T, typename U = void> On 2017/03/06 ...
3 years, 9 months ago (2017-03-06 09:03:42 UTC) #10
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode60 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:60: template <typename T, typename... Args> On 2017/03/06 09:03:42, Yuki(slow_til_mar08) ...
3 years, 9 months ago (2017-03-06 09:51:38 UTC) #11
Yuki
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode60 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:60: template <typename T, typename... Args> On 2017/03/06 09:51:38, Raphael ...
3 years, 9 months ago (2017-03-06 10:13:03 UTC) #12
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode60 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:60: template <typename T, typename... Args> On 2017/03/06 10:13:03, Yuki(slow_til_mar08) ...
3 years, 9 months ago (2017-03-06 10:40:36 UTC) #13
Yuki
https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/1/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode60 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:60: template <typename T, typename... Args> On 2017/03/06 10:40:36, Raphael ...
3 years, 9 months ago (2017-03-06 10:43:04 UTC) #14
Raphael Kubo da Costa (rakuco)
I've uploaded a new version of the patch incorporating Yuki's comments: - V8BindingForIDLTypes.h is now ...
3 years, 9 months ago (2017-03-06 11:23:07 UTC) #15
Yuki
LGTM!! https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h File third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h (right): https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h#newcode84 third_party/WebKit/Source/bindings/core/v8/NativeValueTraits.h:84: static inline typename NativeValueTraitsBase<T>::ImplType nit: inline keyword here ...
3 years, 9 months ago (2017-03-06 11:39:00 UTC) #18
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h File third_party/WebKit/Source/bindings/core/v8/V8Binding.h (right): https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h#newcode907 third_party/WebKit/Source/bindings/core/v8/V8Binding.h:907: struct NativeValueTraits<String> { On 2017/03/06 11:39:00, Yuki(slow_til_mar08) wrote: > ...
3 years, 9 months ago (2017-03-06 11:43:49 UTC) #19
Yuki
https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h File third_party/WebKit/Source/bindings/core/v8/V8Binding.h (right): https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h#newcode907 third_party/WebKit/Source/bindings/core/v8/V8Binding.h:907: struct NativeValueTraits<String> { On 2017/03/06 11:43:49, Raphael Kubo da ...
3 years, 9 months ago (2017-03-06 11:45:56 UTC) #20
Raphael Kubo da Costa (rakuco)
haraken@, I'd appreciate your l-g-t-m to cover modules/serviceworkers/ForeignFetchRespondWithObserver.cpp
3 years, 9 months ago (2017-03-06 11:53:04 UTC) #21
haraken
LGTM with comments. This is a good step forward. I'm really looking forward to seeing ...
3 years, 9 months ago (2017-03-06 12:56:33 UTC) #22
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/IDLTypesBase.h File third_party/WebKit/Source/bindings/core/v8/IDLTypesBase.h (right): https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/IDLTypesBase.h#newcode18 third_party/WebKit/Source/bindings/core/v8/IDLTypesBase.h:18: struct IDLBaseHelper : public IDLBase { On 2017/03/06 12:56:32, ...
3 years, 9 months ago (2017-03-06 14:29:17 UTC) #25
Raphael Kubo da Costa (rakuco)
haraken's question about when to use NativeValueTraits.h vs. NativeValueTraitsImpl.h was a very good one, and ...
3 years, 9 months ago (2017-03-06 14:37:20 UTC) #26
haraken
LGTM! https://codereview.chromium.org/2730183003/diff/80001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h File third_party/WebKit/Source/bindings/core/v8/V8Binding.h (right): https://codereview.chromium.org/2730183003/diff/80001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h#newcode908 third_party/WebKit/Source/bindings/core/v8/V8Binding.h:908: struct NativeValueTraits<SerializedScriptValue> Yeah, I'd prefer moving this to ...
3 years, 9 months ago (2017-03-06 19:10:29 UTC) #27
Raphael Kubo da Costa (rakuco)
https://codereview.chromium.org/2730183003/diff/80001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h File third_party/WebKit/Source/bindings/core/v8/V8Binding.h (right): https://codereview.chromium.org/2730183003/diff/80001/third_party/WebKit/Source/bindings/core/v8/V8Binding.h#newcode908 third_party/WebKit/Source/bindings/core/v8/V8Binding.h:908: struct NativeValueTraits<SerializedScriptValue> On 2017/03/06 19:10:29, haraken wrote: > > ...
3 years, 9 months ago (2017-03-06 19:40:48 UTC) #28
Yuki
LGTM.
3 years, 9 months ago (2017-03-07 06:27:47 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2730183003/100001
3 years, 9 months ago (2017-03-07 08:07:13 UTC) #36
commit-bot: I haz the power
Committed patchset #6 (id:100001) as https://chromium.googlesource.com/chromium/src/+/504550f038ae920fbc2bee9797f298189262e4fc
3 years, 9 months ago (2017-03-07 09:28:14 UTC) #39
Yuki
https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/IDLTypes.h File third_party/WebKit/Source/bindings/core/v8/IDLTypes.h (right): https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Source/bindings/core/v8/IDLTypes.h#newcode60 third_party/WebKit/Source/bindings/core/v8/IDLTypes.h:60: struct MaybeWrapped { On 2017/03/06 12:56:32, haraken wrote: > ...
3 years, 9 months ago (2017-03-08 10:14:22 UTC) #40
Raphael Kubo da Costa (rakuco)
3 years, 9 months ago (2017-03-08 10:18:56 UTC) #41
Message was sent while issue was closed.
On 2017/03/08 10:14:22, Yuki(slow_til_mar08) wrote:
>
https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Sour...
> File third_party/WebKit/Source/bindings/core/v8/IDLTypes.h (right):
> 
>
https://codereview.chromium.org/2730183003/diff/40001/third_party/WebKit/Sour...
> third_party/WebKit/Source/bindings/core/v8/IDLTypes.h:60: struct MaybeWrapped
{
> On 2017/03/06 12:56:32, haraken wrote:
> > 
> > MaybeWrapped => NeedsMember ?
> 
> rakuco, you seems overlooking this comment.
> 
> This comment somewhat makes sense because we often use the term "wrap" for V8
> wrapper object (for a Blink DOM object).  It's a bit confusing.
> 
> NeedsMember looks like that it returns a boolean value, so we may like another
> name.
> 
> What about MaybeMember for example?
> 
> I'm okay to change the name in https://crrev.com/2732093003

Oops, indeed I forgot about this one. I'll update the patch in
https://crrev.com/2732093003 once I manage to find out what's breaking the
Windows component builds in that CL.

Powered by Google App Engine
This is Rietveld 408576698