Index: core/inspector/CodeGeneratorInspectorStrings.py |
diff --git a/core/inspector/CodeGeneratorInspectorStrings.py b/core/inspector/CodeGeneratorInspectorStrings.py |
index 83705c5c7b23d91b8ed76cc88214b8b7546a0b70..059178293245d97162fe1122671238b70f4b5705 100644 |
--- a/core/inspector/CodeGeneratorInspectorStrings.py |
+++ b/core/inspector/CodeGeneratorInspectorStrings.py |
@@ -70,7 +70,7 @@ $code if (m_inspectorFrontendChannel) |
""") |
callback_main_methods = ( |
-"""InspectorBackendDispatcher::$agentName::$callbackName::$callbackName(PassRefPtr<InspectorBackendDispatcherImpl> backendImpl, int id) : CallbackBase(backendImpl, id) {} |
+"""InspectorBackendDispatcher::$agentName::$callbackName::$callbackName(PassRefPtrWillBeRawPtr<InspectorBackendDispatcherImpl> backendImpl, int id) : CallbackBase(backendImpl, id) {} |
void InspectorBackendDispatcher::$agentName::$callbackName::sendSuccess($parameters) |
{ |
@@ -126,6 +126,7 @@ backend_h = ( |
#include "InspectorTypeBuilder.h" |
+#include "platform/heap/Handle.h" |
#include "wtf/PassRefPtr.h" |
#include "wtf/RefCounted.h" |
#include "wtf/text/WTFString.h" |
@@ -140,15 +141,17 @@ typedef String ErrorString; |
class InspectorBackendDispatcherImpl; |
-class InspectorBackendDispatcher: public RefCounted<InspectorBackendDispatcher> { |
+class InspectorBackendDispatcher: public RefCountedWillBeGarbageCollectedFinalized<InspectorBackendDispatcher> { |
public: |
- static PassRefPtr<InspectorBackendDispatcher> create(InspectorFrontendChannel* inspectorFrontendChannel); |
+ static PassRefPtrWillBeRawPtr<InspectorBackendDispatcher> create(InspectorFrontendChannel* inspectorFrontendChannel); |
virtual ~InspectorBackendDispatcher() { } |
+ virtual void trace(Visitor*) { } |
- class CallbackBase: public RefCounted<CallbackBase> { |
+ class CallbackBase: public RefCountedWillBeGarbageCollectedFinalized<CallbackBase> { |
public: |
- CallbackBase(PassRefPtr<InspectorBackendDispatcherImpl> backendImpl, int id); |
+ CallbackBase(PassRefPtrWillBeRawPtr<InspectorBackendDispatcherImpl> backendImpl, int id); |
virtual ~CallbackBase(); |
+ virtual void trace(Visitor*); |
void sendFailure(const ErrorString&); |
bool isActive(); |
@@ -158,7 +161,7 @@ public: |
private: |
void disable() { m_alreadySent = true; } |
- RefPtr<InspectorBackendDispatcherImpl> m_backendImpl; |
+ RefPtrWillBeMember<InspectorBackendDispatcherImpl> m_backendImpl; |
int m_id; |
bool m_alreadySent; |
@@ -278,15 +281,15 @@ const char InspectorBackendDispatcherImpl::InvalidParamsFormatString[] = "Some a |
$methods |
-PassRefPtr<InspectorBackendDispatcher> InspectorBackendDispatcher::create(InspectorFrontendChannel* inspectorFrontendChannel) |
+PassRefPtrWillBeRawPtr<InspectorBackendDispatcher> InspectorBackendDispatcher::create(InspectorFrontendChannel* inspectorFrontendChannel) |
{ |
- return adoptRef(new InspectorBackendDispatcherImpl(inspectorFrontendChannel)); |
+ return adoptRefWillBeNoop(new InspectorBackendDispatcherImpl(inspectorFrontendChannel)); |
} |
void InspectorBackendDispatcherImpl::dispatch(const String& message) |
{ |
- RefPtr<InspectorBackendDispatcher> protect = this; |
+ RefPtrWillBeRawPtr<InspectorBackendDispatcher> protect(this); |
typedef void (InspectorBackendDispatcherImpl::*CallHandler)(long callId, JSONObject* messageObject, JSONArray* protocolErrors); |
typedef HashMap<String, CallHandler> DispatchMap; |
DEFINE_STATIC_LOCAL(DispatchMap, dispatchMap, ); |
@@ -484,11 +487,16 @@ bool InspectorBackendDispatcher::getCommandName(const String& message, String* r |
return true; |
} |
-InspectorBackendDispatcher::CallbackBase::CallbackBase(PassRefPtr<InspectorBackendDispatcherImpl> backendImpl, int id) |
+InspectorBackendDispatcher::CallbackBase::CallbackBase(PassRefPtrWillBeRawPtr<InspectorBackendDispatcherImpl> backendImpl, int id) |
: m_backendImpl(backendImpl), m_id(id), m_alreadySent(false) {} |
InspectorBackendDispatcher::CallbackBase::~CallbackBase() {} |
+void InspectorBackendDispatcher::CallbackBase::trace(Visitor* visitor) |
+{ |
+ visitor->trace(m_backendImpl); |
+} |
+ |
void InspectorBackendDispatcher::CallbackBase::sendFailure(const ErrorString& error) |
{ |
ASSERT(error.length()); |
@@ -576,30 +584,6 @@ private: |
WTF_MAKE_NONCOPYABLE(OptOutput); |
}; |
- |
-// A small transient wrapper around int type, that can be used as a funciton parameter type |
-// cleverly disallowing C++ implicit casts from float or double. |
-class ExactlyInt { |
-public: |
- template<typename T> |
- ExactlyInt(T t) : m_value(cast_to_int<T>(t)) {} |
- |
- ExactlyInt() {} |
- |
- operator int() { return m_value; } |
-private: |
- int m_value; |
- |
- template<typename T> |
- static int cast_to_int(T) { return T::default_case_cast_is_not_supported(); } |
-}; |
- |
-template<> |
-inline int ExactlyInt::cast_to_int<int>(int i) { return i; } |
- |
-template<> |
-inline int ExactlyInt::cast_to_int<unsigned int>(unsigned int i) { return i; } |
- |
class RuntimeCastHelper { |
public: |
#if $validatorIfdefName |