Commit b180df31 authored by Hitoshi Yoshida's avatar Hitoshi Yoshida Committed by Commit Bot

CodeGen: Make dictionaries compilable (3)

- adds more native_value_traits_impl.h includes
- adds include for a union type


Bug: 839389
Change-Id: I454f2e5a2e9d757439ee3def1edafa53c18bb860
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2060443Reviewed-by: default avatarYuki Shiino <yukishiino@chromium.org>
Reviewed-by: default avatarKentaro Hara <haraken@chromium.org>
Commit-Queue: Hitoshi Yoshida <peria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#742538}
parent 8a1bc518
......@@ -9,6 +9,7 @@ import v8_utilities
UNION_CPP_INCLUDES = frozenset([
'base/stl_util.h',
'bindings/core/v8/native_value_traits_impl.h',
'bindings/core/v8/to_v8_for_core.h',
])
......
......@@ -12,6 +12,7 @@
#include "base/stl_util.h"
#include "third_party/blink/renderer/bindings/core/v8/dictionary.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_array_buffer.h"
......
......@@ -11,6 +11,7 @@
#include "third_party/blink/renderer/bindings/tests/results/core/node_or_node_list.h"
#include "base/stl_util.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_node.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_node_list.h"
......
......@@ -11,6 +11,7 @@
#include "third_party/blink/renderer/bindings/tests/results/core/test_interface_2_or_uint8_array.h"
#include "base/stl_util.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_test_interface_2.h"
......
......@@ -11,6 +11,7 @@
#include "third_party/blink/renderer/bindings/tests/results/core/test_interface_or_test_interface_empty.h"
#include "base/stl_util.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_test_interface.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_test_interface_empty.h"
......
......@@ -57,6 +57,12 @@ static inline base::Optional<double> ValueOrUnresolved(double a) {
return IsNull(a) ? base::nullopt : base::Optional<double>(a);
}
// TODO(crbug.com/1050474): Remove both ValueOrUnresolved().
static inline base::Optional<double> ValueOrUnresolved(
const base::Optional<double>& value) {
return value;
}
struct CORE_EXPORT Timing {
USING_FAST_MALLOC(Timing);
......
......@@ -8,8 +8,6 @@ dictionary InternalDictionary {
long longMember;
[Clamp] long longMemberWithClamp;
[EnforceRange] long longMemberWithEnforceRange;
// We don't want to add a UseCounter feature for testing, so using PrefixedStorageInfo.
[DeprecateAs=PrefixedStorageInfo, ImplementedAs=longMember] long deprecateLongMember;
long longMemberWithDefault = 42;
long? longOrNullMember;
long? longOrNullMemberWithDefault = null;
......
......@@ -10,6 +10,7 @@
#include "third_party/blink/public/platform/web_media_stream_track.h"
#include "third_party/blink/public/web/modules/mediastream/media_stream_video_source.h"
#include "third_party/blink/public/web/modules/mediastream/media_stream_video_track.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_binding_for_core.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/dom/events/native_event_listener.h"
#include "third_party/blink/renderer/core/html/media/html_media_element.h"
......
......@@ -4,6 +4,7 @@
#include "third_party/blink/renderer/modules/payments/payment_request_respond_with_observer.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/script_value.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_binding_for_core.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_payment_address.h"
......
......@@ -8,6 +8,7 @@
#include "third_party/blink/public/common/browser_interface_broker_proxy.h"
#include "third_party/blink/public/mojom/permissions/permission.mojom-blink.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/script_value.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_clipboard_permission_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_midi_permission_descriptor.h"
......
......@@ -4,6 +4,7 @@
#include "third_party/blink/renderer/modules/push_messaging/push_subscription_options.h"
#include "third_party/blink/renderer/bindings/modules/v8/array_buffer_or_array_buffer_view_or_string.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_push_subscription_options_init.h"
#include "third_party/blink/renderer/core/typed_arrays/dom_array_buffer.h"
#include "third_party/blink/renderer/platform/bindings/exception_code.h"
......
CONSOLE WARNING: line 277: 'window.webkitStorageInfo' is deprecated. Please use 'navigator.webkitTemporaryStorage' or 'navigator.webkitPersistentStorage' instead.
IDL dictionary unittest
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
......@@ -163,10 +162,6 @@ PASS dict.longMemberWithClamp is 2147483647
PASS dictionaryTest.set({ longMemberWithEnforceRange: 2147483648 }) threw exception TypeError: Failed to execute 'set' on 'DictionaryTest': Value is outside the 'long' value range..
Test for [ImplementedAs] and [DeprecateAs] member
PASS dict.longMember is 42
Test for passing EventTarget
PASS dict.eventTargetOrNullMember is window
PASS dict.eventTargetOrNullMember is null
......
......@@ -273,14 +273,6 @@ if (window.internals && internals.dictionaryTest) {
shouldThrow('dictionaryTest.set({ longMemberWithEnforceRange: 2147483648 })');
debug('');
debug('Test for [ImplementedAs] and [DeprecateAs] member');
dictionaryTest.set({
deprecateLongMember: 42
});
dict = dictionaryTest.get();
shouldBe('dict.longMember', '42');
debug('');
debug('Test for passing EventTarget');
dictionaryTest.set({
eventTargetOrNullMember: window
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment