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

Unified Diff: Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp

Issue 1063253005: bindings: Use Visitor to collect union types (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/bindings/tests/results/core/UnionTypesCore.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp
diff --git a/Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp b/Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp
index a894b05b412d8541b0e71671207dfb7554e14ef7..c860e3625c6e6bdf1fab0503f1efb341e4205e0b 100644
--- a/Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp
+++ b/Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp
@@ -9,6 +9,7 @@
#include "bindings/core/v8/Dictionary.h"
#include "bindings/core/v8/ExceptionState.h"
+#include "bindings/core/v8/UnionTypesCore.h"
#include "bindings/core/v8/V8DOMConfiguration.h"
#include "bindings/core/v8/V8ObjectConstructor.h"
#include "bindings/core/v8/V8TestInterfaceEmpty.h"
@@ -57,6 +58,7 @@ static void constructor2(const v8::FunctionCallbackInfo<v8::Value>& info)
Dictionary dictionaryArg;
Vector<String> sequenceStringArg;
Vector<Dictionary> sequenceDictionaryArg;
+ Vector<LongOrTestDictionary> sequenceLongOrTestDictionaryArg;
Dictionary optionalDictionaryArg;
TestInterfaceEmpty* optionalTestInterfaceEmptyArg;
{
@@ -81,20 +83,23 @@ static void constructor2(const v8::FunctionCallbackInfo<v8::Value>& info)
sequenceDictionaryArg = toImplArray<Dictionary>(info[5], 6, info.GetIsolate(), exceptionState);
if (exceptionState.throwIfNeeded())
return;
- if (!isUndefinedOrNull(info[6]) && !info[6]->IsObject()) {
- exceptionState.throwTypeError("parameter 7 ('optionalDictionaryArg') is not an object.");
+ sequenceLongOrTestDictionaryArg = toImplArray<LongOrTestDictionary>(info[6], 7, info.GetIsolate(), exceptionState);
+ if (exceptionState.throwIfNeeded())
+ return;
+ if (!isUndefinedOrNull(info[7]) && !info[7]->IsObject()) {
+ exceptionState.throwTypeError("parameter 8 ('optionalDictionaryArg') is not an object.");
exceptionState.throwIfNeeded();
return;
}
- optionalDictionaryArg = Dictionary(info[6], info.GetIsolate(), exceptionState);
+ optionalDictionaryArg = Dictionary(info[7], info.GetIsolate(), exceptionState);
if (exceptionState.throwIfNeeded())
return;
- optionalTestInterfaceEmptyArg = V8TestInterfaceEmpty::toImplWithTypeCheck(info.GetIsolate(), info[7]);
+ optionalTestInterfaceEmptyArg = V8TestInterfaceEmpty::toImplWithTypeCheck(info.GetIsolate(), info[8]);
}
ScriptState* scriptState = ScriptState::current(info.GetIsolate());
ExecutionContext* executionContext = currentExecutionContext(info.GetIsolate());
Document& document = *toDocument(currentExecutionContext(info.GetIsolate()));
- RefPtr<TestInterfaceConstructor> impl = TestInterfaceConstructor::create(scriptState, executionContext, document, doubleArg, stringArg, testInterfaceEmptyArg, dictionaryArg, sequenceStringArg, sequenceDictionaryArg, optionalDictionaryArg, optionalTestInterfaceEmptyArg, exceptionState);
+ RefPtr<TestInterfaceConstructor> impl = TestInterfaceConstructor::create(scriptState, executionContext, document, doubleArg, stringArg, testInterfaceEmptyArg, dictionaryArg, sequenceStringArg, sequenceDictionaryArg, sequenceLongOrTestDictionaryArg, optionalDictionaryArg, optionalTestInterfaceEmptyArg, exceptionState);
if (exceptionState.hadException()) {
exceptionState.throwIfNeeded();
return;
@@ -177,7 +182,7 @@ static void constructor4(const v8::FunctionCallbackInfo<v8::Value>& info)
static void constructor(const v8::FunctionCallbackInfo<v8::Value>& info)
{
ExceptionState exceptionState(ExceptionState::ConstructionContext, "TestInterfaceConstructor", info.Holder(), info.GetIsolate());
- switch (std::min(8, info.Length())) {
+ switch (std::min(9, info.Length())) {
case 0:
if (true) {
TestInterfaceConstructorV8Internal::constructor1(info);
@@ -202,19 +207,19 @@ static void constructor(const v8::FunctionCallbackInfo<v8::Value>& info)
return;
}
break;
- case 6:
+ case 7:
if (true) {
TestInterfaceConstructorV8Internal::constructor2(info);
return;
}
break;
- case 7:
+ case 8:
if (true) {
TestInterfaceConstructorV8Internal::constructor2(info);
return;
}
break;
- case 8:
+ case 9:
if (true) {
TestInterfaceConstructorV8Internal::constructor2(info);
return;
@@ -222,7 +227,7 @@ static void constructor(const v8::FunctionCallbackInfo<v8::Value>& info)
break;
default:
if (info.Length() >= 0) {
- throwArityTypeError(exceptionState, "[0, 1, 2, 3, 6, 7, 8]", info.Length());
+ throwArityTypeError(exceptionState, "[0, 1, 2, 3, 7, 8, 9]", info.Length());
return;
}
exceptionState.throwTypeError(ExceptionMessages::notEnoughArguments(0, info.Length()));
« no previous file with comments | « Source/bindings/tests/results/core/UnionTypesCore.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698