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

Unified Diff: trunk/Source/platform/CrossThreadCopier.h

Issue 309503013: Revert 174956 "Oilpan: Move ThreadableWebSocketChannelClientWrap..." (Closed) Base URL: svn://svn.chromium.org/blink/
Patch Set: Created 6 years, 7 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
Index: trunk/Source/platform/CrossThreadCopier.h
===================================================================
--- trunk/Source/platform/CrossThreadCopier.h (revision 175241)
+++ trunk/Source/platform/CrossThreadCopier.h (working copy)
@@ -32,7 +32,6 @@
#define CrossThreadCopier_h
#include "platform/PlatformExport.h"
-#include "platform/heap/Handle.h"
#include "wtf/Assertions.h"
#include "wtf/Forward.h"
#include "wtf/PassOwnPtr.h"
@@ -61,25 +60,25 @@
}
};
- template<bool isConvertibleToInteger, bool isThreadSafeRefCounted, bool isGarbageCollected, typename T> struct CrossThreadCopierBase;
+ template<bool isConvertibleToInteger, bool isThreadSafeRefCounted, typename T> struct CrossThreadCopierBase;
// Integers get passed through without any changes.
- template<typename T> struct CrossThreadCopierBase<true, false, false, T> : public CrossThreadCopierPassThrough<T> {
+ template<typename T> struct CrossThreadCopierBase<true, false, T> : public CrossThreadCopierPassThrough<T> {
};
// To allow a type to be passed across threads using its copy constructor, add a forward declaration of the type and
// a CopyThreadCopierBase<false, false, TypeName> : public CrossThreadCopierPassThrough<TypeName> { }; to this file.
- template<> struct CrossThreadCopierBase<false, false, false, ThreadableLoaderOptions> : public CrossThreadCopierPassThrough<ThreadableLoaderOptions> {
+ template<> struct CrossThreadCopierBase<false, false, ThreadableLoaderOptions> : public CrossThreadCopierPassThrough<ThreadableLoaderOptions> {
};
- template<> struct CrossThreadCopierBase<false, false, false, IntRect> : public CrossThreadCopierPassThrough<IntRect> {
+ template<> struct CrossThreadCopierBase<false, false, IntRect> : public CrossThreadCopierPassThrough<IntRect> {
};
- template<> struct CrossThreadCopierBase<false, false, false, IntSize> : public CrossThreadCopierPassThrough<IntSize> {
+ template<> struct CrossThreadCopierBase<false, false, IntSize> : public CrossThreadCopierPassThrough<IntSize> {
};
// Custom copy methods.
- template<typename T> struct CrossThreadCopierBase<false, true, false, T> {
+ template<typename T> struct CrossThreadCopierBase<false, true, T> {
typedef typename WTF::RemoveTemplate<T, RefPtr>::Type TypeWithoutRefPtr;
typedef typename WTF::RemoveTemplate<TypeWithoutRefPtr, PassRefPtr>::Type TypeWithoutPassRefPtr;
typedef typename WTF::RemovePointer<TypeWithoutPassRefPtr>::Type RefCountedType;
@@ -97,7 +96,7 @@
}
};
- template<typename T> struct CrossThreadCopierBase<false, false, false, PassOwnPtr<T> > {
+ template<typename T> struct CrossThreadCopierBase<false, false, PassOwnPtr<T> > {
typedef PassOwnPtr<T> Type;
static Type copy(Type ownPtr)
{
@@ -105,46 +104,36 @@
}
};
- template<> struct CrossThreadCopierBase<false, false, false, KURL> {
+ template<> struct CrossThreadCopierBase<false, false, KURL> {
typedef KURL Type;
PLATFORM_EXPORT static Type copy(const KURL&);
};
- template<> struct CrossThreadCopierBase<false, false, false, String> {
+ template<> struct CrossThreadCopierBase<false, false, String> {
typedef String Type;
PLATFORM_EXPORT static Type copy(const String&);
};
- template<> struct CrossThreadCopierBase<false, false, false, ResourceError> {
+ template<> struct CrossThreadCopierBase<false, false, ResourceError> {
typedef ResourceError Type;
PLATFORM_EXPORT static Type copy(const ResourceError&);
};
- template<> struct CrossThreadCopierBase<false, false, false, ResourceRequest> {
+ template<> struct CrossThreadCopierBase<false, false, ResourceRequest> {
typedef PassOwnPtr<CrossThreadResourceRequestData> Type;
PLATFORM_EXPORT static Type copy(const ResourceRequest&);
};
- template<> struct CrossThreadCopierBase<false, false, false, ResourceResponse> {
+ template<> struct CrossThreadCopierBase<false, false, ResourceResponse> {
typedef PassOwnPtr<CrossThreadResourceResponseData> Type;
PLATFORM_EXPORT static Type copy(const ResourceResponse&);
};
- template<typename T> struct CrossThreadCopierBase<false, false, true, T> {
- typedef typename WTF::RemovePointer<T>::Type TypeWithoutPointer;
- typedef PassRefPtrWillBeRawPtr<TypeWithoutPointer> Type;
- static Type copy(const T& ptr)
- {
- return ptr;
- }
- };
-
template<typename T> struct CrossThreadCopier : public CrossThreadCopierBase<WTF::IsConvertibleToInteger<T>::value,
- WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, RefPtr>::Type, ThreadSafeRefCounted>::value
- || WTF::IsSubclassOfTemplate<typename WTF::RemovePointer<T>::Type, ThreadSafeRefCounted>::value
- || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, PassRefPtr>::Type, ThreadSafeRefCounted>::value,
- WTF::IsSubclassOfTemplate<typename WTF::RemovePointer<T>::Type, GarbageCollected>::value,
- T> {
+ WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, RefPtr>::Type, ThreadSafeRefCounted>::value
+ || WTF::IsSubclassOfTemplate<typename WTF::RemovePointer<T>::Type, ThreadSafeRefCounted>::value
+ || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, PassRefPtr>::Type, ThreadSafeRefCounted>::value,
+ T> {
};
template<typename T> struct AllowCrossThreadAccessWrapper {
@@ -155,7 +144,7 @@
T* m_value;
};
- template<typename T> struct CrossThreadCopierBase<false, false, false, AllowCrossThreadAccessWrapper<T> > {
+ template<typename T> struct CrossThreadCopierBase<false, false, AllowCrossThreadAccessWrapper<T> > {
typedef T* Type;
static Type copy(const AllowCrossThreadAccessWrapper<T>& wrapper) { return wrapper.value(); }
};
@@ -175,7 +164,7 @@
T* m_value;
};
- template<typename T> struct CrossThreadCopierBase<false, false, false, AllowAccessLaterWrapper<T> > {
+ template<typename T> struct CrossThreadCopierBase<false, false, AllowAccessLaterWrapper<T> > {
typedef T* Type;
static Type copy(const AllowAccessLaterWrapper<T>& wrapper) { return wrapper.value(); }
};
« no previous file with comments | « trunk/Source/modules/websockets/WorkerThreadableWebSocketChannel.cpp ('k') | trunk/Source/platform/CrossThreadCopier.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698