| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 551 { | 551 { |
| 552 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMMethod"); | 552 TRACE_EVENT_SET_SAMPLING_STATE("Blink", "DOMMethod"); |
| 553 TestInterfaceV8Internal::implementsMethod1Method(info); | 553 TestInterfaceV8Internal::implementsMethod1Method(info); |
| 554 TRACE_EVENT_SET_SAMPLING_STATE("V8", "Execution"); | 554 TRACE_EVENT_SET_SAMPLING_STATE("V8", "Execution"); |
| 555 } | 555 } |
| 556 | 556 |
| 557 static void implementsMethod2Method(const v8::FunctionCallbackInfo<v8::Value>& i
nfo) | 557 static void implementsMethod2Method(const v8::FunctionCallbackInfo<v8::Value>& i
nfo) |
| 558 { | 558 { |
| 559 ExceptionState exceptionState(ExceptionState::ExecutionContext, "implementsM
ethod2", "TestInterface", info.Holder(), info.GetIsolate()); | 559 ExceptionState exceptionState(ExceptionState::ExecutionContext, "implementsM
ethod2", "TestInterface", info.Holder(), info.GetIsolate()); |
| 560 if (UNLIKELY(info.Length() < 2)) { | 560 if (UNLIKELY(info.Length() < 2)) { |
| 561 throwTypeError(ExceptionMessages::failedToExecute("implementsMethod2", "
TestInterface", ExceptionMessages::notEnoughArguments(2, info.Length())), info.G
etIsolate()); | 561 exceptionState.throwTypeError(ExceptionMessages::notEnoughArguments(2, i
nfo.Length())); |
| 562 exceptionState.throwIfNeeded(); |
| 562 return; | 563 return; |
| 563 } | 564 } |
| 564 TestInterface* imp = V8TestInterface::toNative(info.Holder()); | 565 TestInterface* imp = V8TestInterface::toNative(info.Holder()); |
| 565 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, strArg, info[0]); | 566 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, strArg, info[0]); |
| 566 V8TRYCATCH_VOID(TestObj*, objArg, V8TestObject::hasInstance(info[1], info.Ge
tIsolate(), worldType(info.GetIsolate())) ? V8TestObject::toNative(v8::Handle<v8
::Object>::Cast(info[1])) : 0); | 567 V8TRYCATCH_VOID(TestObj*, objArg, V8TestObject::hasInstance(info[1], info.Ge
tIsolate(), worldType(info.GetIsolate())) ? V8TestObject::toNative(v8::Handle<v8
::Object>::Cast(info[1])) : 0); |
| 567 ExecutionContext* scriptContext = getExecutionContext(); | 568 ExecutionContext* scriptContext = getExecutionContext(); |
| 568 RefPtr<TestObj> result = TestImplements::implementsMethod2(scriptContext, im
p, strArg, objArg, exceptionState); | 569 RefPtr<TestObj> result = TestImplements::implementsMethod2(scriptContext, im
p, strArg, objArg, exceptionState); |
| 569 if (exceptionState.throwIfNeeded()) | 570 if (exceptionState.throwIfNeeded()) |
| 570 return; | 571 return; |
| 571 v8SetReturnValue(info, result.release()); | 572 v8SetReturnValue(info, result.release()); |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 612 TestInterfaceV8Internal::supplementalMethod1Method(info); | 613 TestInterfaceV8Internal::supplementalMethod1Method(info); |
| 613 TRACE_EVENT_SET_SAMPLING_STATE("V8", "Execution"); | 614 TRACE_EVENT_SET_SAMPLING_STATE("V8", "Execution"); |
| 614 } | 615 } |
| 615 #endif // ENABLE(Condition11) || ENABLE(Condition12) | 616 #endif // ENABLE(Condition11) || ENABLE(Condition12) |
| 616 | 617 |
| 617 #if ENABLE(Condition11) || ENABLE(Condition12) | 618 #if ENABLE(Condition11) || ENABLE(Condition12) |
| 618 static void supplementalMethod2Method(const v8::FunctionCallbackInfo<v8::Value>&
info) | 619 static void supplementalMethod2Method(const v8::FunctionCallbackInfo<v8::Value>&
info) |
| 619 { | 620 { |
| 620 ExceptionState exceptionState(ExceptionState::ExecutionContext, "supplementa
lMethod2", "TestInterface", info.Holder(), info.GetIsolate()); | 621 ExceptionState exceptionState(ExceptionState::ExecutionContext, "supplementa
lMethod2", "TestInterface", info.Holder(), info.GetIsolate()); |
| 621 if (UNLIKELY(info.Length() < 2)) { | 622 if (UNLIKELY(info.Length() < 2)) { |
| 622 throwTypeError(ExceptionMessages::failedToExecute("supplementalMethod2",
"TestInterface", ExceptionMessages::notEnoughArguments(2, info.Length())), info
.GetIsolate()); | 623 exceptionState.throwTypeError(ExceptionMessages::notEnoughArguments(2, i
nfo.Length())); |
| 624 exceptionState.throwIfNeeded(); |
| 623 return; | 625 return; |
| 624 } | 626 } |
| 625 TestInterface* imp = V8TestInterface::toNative(info.Holder()); | 627 TestInterface* imp = V8TestInterface::toNative(info.Holder()); |
| 626 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, strArg, info[0]); | 628 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, strArg, info[0]); |
| 627 V8TRYCATCH_VOID(TestObj*, objArg, V8TestObject::hasInstance(info[1], info.Ge
tIsolate(), worldType(info.GetIsolate())) ? V8TestObject::toNative(v8::Handle<v8
::Object>::Cast(info[1])) : 0); | 629 V8TRYCATCH_VOID(TestObj*, objArg, V8TestObject::hasInstance(info[1], info.Ge
tIsolate(), worldType(info.GetIsolate())) ? V8TestObject::toNative(v8::Handle<v8
::Object>::Cast(info[1])) : 0); |
| 628 ExecutionContext* scriptContext = getExecutionContext(); | 630 ExecutionContext* scriptContext = getExecutionContext(); |
| 629 RefPtr<TestObj> result = TestPartialInterface::supplementalMethod2(scriptCon
text, imp, strArg, objArg, exceptionState); | 631 RefPtr<TestObj> result = TestPartialInterface::supplementalMethod2(scriptCon
text, imp, strArg, objArg, exceptionState); |
| 630 if (exceptionState.throwIfNeeded()) | 632 if (exceptionState.throwIfNeeded()) |
| 631 return; | 633 return; |
| 632 v8SetReturnValue(info, result.release()); | 634 v8SetReturnValue(info, result.release()); |
| (...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 985 } | 987 } |
| 986 | 988 |
| 987 template<> | 989 template<> |
| 988 v8::Handle<v8::Value> toV8NoInline(TestInterface* impl, v8::Handle<v8::Object> c
reationContext, v8::Isolate* isolate) | 990 v8::Handle<v8::Value> toV8NoInline(TestInterface* impl, v8::Handle<v8::Object> c
reationContext, v8::Isolate* isolate) |
| 989 { | 991 { |
| 990 return toV8(impl, creationContext, isolate); | 992 return toV8(impl, creationContext, isolate); |
| 991 } | 993 } |
| 992 | 994 |
| 993 } // namespace WebCore | 995 } // namespace WebCore |
| 994 #endif // ENABLE(Condition1) || ENABLE(Condition2) | 996 #endif // ENABLE(Condition1) || ENABLE(Condition2) |
| OLD | NEW |