| 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 24 matching lines...) Expand all  Loading... | 
|   35  |   35  | 
|   36 #include "RuntimeEnabledFeatures.h" |   36 #include "RuntimeEnabledFeatures.h" | 
|   37 #include "bindings/v8/ExceptionMessages.h" |   37 #include "bindings/v8/ExceptionMessages.h" | 
|   38 #include "bindings/v8/ExceptionState.h" |   38 #include "bindings/v8/ExceptionState.h" | 
|   39 #include "bindings/v8/V8Binding.h" |   39 #include "bindings/v8/V8Binding.h" | 
|   40 #include "bindings/v8/V8DOMConfiguration.h" |   40 #include "bindings/v8/V8DOMConfiguration.h" | 
|   41 #include "bindings/v8/V8DOMWrapper.h" |   41 #include "bindings/v8/V8DOMWrapper.h" | 
|   42 #include "bindings/v8/V8ObjectConstructor.h" |   42 #include "bindings/v8/V8ObjectConstructor.h" | 
|   43 #include "core/dom/ContextFeatures.h" |   43 #include "core/dom/ContextFeatures.h" | 
|   44 #include "core/dom/Document.h" |   44 #include "core/dom/Document.h" | 
 |   45 #include "core/frame/UseCounter.h" | 
|   45 #include "platform/TraceEvent.h" |   46 #include "platform/TraceEvent.h" | 
|   46 #include "wtf/UnusedParam.h" |   47 #include "wtf/UnusedParam.h" | 
|   47  |   48  | 
|   48 namespace WebCore { |   49 namespace WebCore { | 
|   49  |   50  | 
|   50 static void initializeScriptWrappableForInterface(TestInterfaceConstructor* obje
     ct) |   51 static void initializeScriptWrappableForInterface(TestInterfaceConstructor* obje
     ct) | 
|   51 { |   52 { | 
|   52     if (ScriptWrappable::wrapperCanBeStoredInObject(object)) |   53     if (ScriptWrappable::wrapperCanBeStoredInObject(object)) | 
|   53         ScriptWrappable::setTypeInfoInObject(object, &V8TestInterfaceConstructor
     ::wrapperTypeInfo); |   54         ScriptWrappable::setTypeInfoInObject(object, &V8TestInterfaceConstructor
     ::wrapperTypeInfo); | 
|   54     else |   55     else | 
| (...skipping 28 matching lines...) Expand all  Loading... | 
|   83  |   84  | 
|   84     V8DOMWrapper::associateObjectWithWrapper<V8TestInterfaceConstructor>(impl.re
     lease(), &V8TestInterfaceConstructor::wrapperTypeInfo, wrapper, info.GetIsolate(
     ), WrapperConfiguration::Dependent); |   85     V8DOMWrapper::associateObjectWithWrapper<V8TestInterfaceConstructor>(impl.re
     lease(), &V8TestInterfaceConstructor::wrapperTypeInfo, wrapper, info.GetIsolate(
     ), WrapperConfiguration::Dependent); | 
|   85     v8SetReturnValue(info, wrapper); |   86     v8SetReturnValue(info, wrapper); | 
|   86 } |   87 } | 
|   87  |   88  | 
|   88 } // namespace TestInterfaceConstructorV8Internal |   89 } // namespace TestInterfaceConstructorV8Internal | 
|   89  |   90  | 
|   90 void V8TestInterfaceConstructor::constructorCallback(const v8::FunctionCallbackI
     nfo<v8::Value>& info) |   91 void V8TestInterfaceConstructor::constructorCallback(const v8::FunctionCallbackI
     nfo<v8::Value>& info) | 
|   91 { |   92 { | 
|   92     TRACE_EVENT_SCOPED_SAMPLING_STATE("Blink", "DOMConstructor"); |   93     TRACE_EVENT_SCOPED_SAMPLING_STATE("Blink", "DOMConstructor"); | 
 |   94     UseCounter::count(activeDOMWindow(), UseCounter::TestFeature); | 
|   93     if (!info.IsConstructCall()) { |   95     if (!info.IsConstructCall()) { | 
|   94         throwTypeError(ExceptionMessages::failedToConstruct("TestInterfaceConstr
     uctor", "Please use the 'new' operator, this DOM object constructor cannot be ca
     lled as a function."), info.GetIsolate()); |   96         throwTypeError(ExceptionMessages::failedToConstruct("TestInterfaceConstr
     uctor", "Please use the 'new' operator, this DOM object constructor cannot be ca
     lled as a function."), info.GetIsolate()); | 
|   95         return; |   97         return; | 
|   96     } |   98     } | 
|   97  |   99  | 
|   98     if (ConstructorMode::current() == ConstructorMode::WrapExistingObject) { |  100     if (ConstructorMode::current() == ConstructorMode::WrapExistingObject) { | 
|   99         v8SetReturnValue(info, info.Holder()); |  101         v8SetReturnValue(info, info.Holder()); | 
|  100         return; |  102         return; | 
|  101     } |  103     } | 
|  102  |  104  | 
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  178     fromInternalPointer(object)->deref(); |  180     fromInternalPointer(object)->deref(); | 
|  179 } |  181 } | 
|  180  |  182  | 
|  181 template<> |  183 template<> | 
|  182 v8::Handle<v8::Value> toV8NoInline(TestInterfaceConstructor* impl, v8::Handle<v8
     ::Object> creationContext, v8::Isolate* isolate) |  184 v8::Handle<v8::Value> toV8NoInline(TestInterfaceConstructor* impl, v8::Handle<v8
     ::Object> creationContext, v8::Isolate* isolate) | 
|  183 { |  185 { | 
|  184     return toV8(impl, creationContext, isolate); |  186     return toV8(impl, creationContext, isolate); | 
|  185 } |  187 } | 
|  186  |  188  | 
|  187 } // namespace WebCore |  189 } // namespace WebCore | 
| OLD | NEW |