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

Side by Side Diff: Source/platform/heap/Handle.h

Issue 329853004: Remove RefCountedGarbageCollected from EventTarget objects (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/modules/speech/SpeechSynthesisUtterance.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2014 Google Inc. All rights reserved. 2 * Copyright (C) 2014 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 765 matching lines...) Expand 10 before | Expand all | Expand 10 after
776 // 776 //
777 // Having the CPP expansion instead be fully namespace qualified, and the 777 // Having the CPP expansion instead be fully namespace qualified, and the
778 // transition type be unqualified, would dually not work for template 778 // transition type be unqualified, would dually not work for template
779 // aliases. So, slightly unfortunately, fall back/down to the lowest 779 // aliases. So, slightly unfortunately, fall back/down to the lowest
780 // commmon denominator of using CPP macros only. 780 // commmon denominator of using CPP macros only.
781 #if ENABLE(OILPAN) 781 #if ENABLE(OILPAN)
782 #define PassRefPtrWillBeRawPtr WTF::RawPtr 782 #define PassRefPtrWillBeRawPtr WTF::RawPtr
783 #define RefCountedWillBeGarbageCollected WebCore::GarbageCollected 783 #define RefCountedWillBeGarbageCollected WebCore::GarbageCollected
784 #define RefCountedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinal ized 784 #define RefCountedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinal ized
785 #define RefCountedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCol lected 785 #define RefCountedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCol lected
786 #define RefCountedGarbageCollectedWillBeGarbageCollectedFinalized WebCore::Garba geCollectedFinalized
786 #define ThreadSafeRefCountedWillBeGarbageCollected WebCore::GarbageCollected 787 #define ThreadSafeRefCountedWillBeGarbageCollected WebCore::GarbageCollected
787 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WebCore::GarbageColl ectedFinalized 788 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WebCore::GarbageColl ectedFinalized
788 #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WebCore:: ThreadSafeRefCountedGarbageCollected 789 #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WebCore:: ThreadSafeRefCountedGarbageCollected
789 #define TreeSharedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCol lected 790 #define TreeSharedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCol lected
790 #define PersistentWillBeMember WebCore::Member 791 #define PersistentWillBeMember WebCore::Member
791 #define RefPtrWillBePersistent WebCore::Persistent 792 #define RefPtrWillBePersistent WebCore::Persistent
792 #define RefPtrWillBeRawPtr WTF::RawPtr 793 #define RefPtrWillBeRawPtr WTF::RawPtr
793 #define RefPtrWillBeMember WebCore::Member 794 #define RefPtrWillBeMember WebCore::Member
794 #define RefPtrWillBeWeakMember WebCore::WeakMember 795 #define RefPtrWillBeWeakMember WebCore::WeakMember
795 #define RefPtrWillBeCrossThreadPersistent WebCore::CrossThreadPersistent 796 #define RefPtrWillBeCrossThreadPersistent WebCore::CrossThreadPersistent
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
860 return PassOwnPtrWillBeRawPtr<T>(ptr); 861 return PassOwnPtrWillBeRawPtr<T>(ptr);
861 } 862 }
862 863
863 template<typename T> T* adoptPtrWillBeRefCountedGarbageCollected(T* ptr) 864 template<typename T> T* adoptPtrWillBeRefCountedGarbageCollected(T* ptr)
864 { 865 {
865 static const bool isRefCountedGarbageCollected = WTF::IsSubclassOfTemplate<t ypename WTF::RemoveConst<T>::Type, RefCountedGarbageCollected>::value; 866 static const bool isRefCountedGarbageCollected = WTF::IsSubclassOfTemplate<t ypename WTF::RemoveConst<T>::Type, RefCountedGarbageCollected>::value;
866 COMPILE_ASSERT(isRefCountedGarbageCollected, useAdoptRefWillBeNoop); 867 COMPILE_ASSERT(isRefCountedGarbageCollected, useAdoptRefWillBeNoop);
867 return adoptRefCountedGarbageCollected(ptr); 868 return adoptRefCountedGarbageCollected(ptr);
868 } 869 }
869 870
871 template<typename T> T* adoptRefCountedGarbageCollectedWillBeNoop(T* ptr)
872 {
873 static const bool notRefCountedGarbageCollected = !WTF::IsSubclassOfTemplate <typename WTF::RemoveConst<T>::Type, RefCountedGarbageCollected>::value;
874 static const bool notRefCounted = !WTF::IsSubclassOfTemplate<typename WTF::R emoveConst<T>::Type, RefCounted>::value;
875 COMPILE_ASSERT(notRefCountedGarbageCollected, useAdoptRefCountedWillBeRefCou ntedGarbageCollected);
876 COMPILE_ASSERT(notRefCounted, youMustAdopt);
877 return ptr;
878 }
879
870 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED // do nothing when oilpan is ena bled. 880 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED // do nothing when oilpan is ena bled.
871 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing 881 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing
872 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing 882 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing
873 #define DEFINE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing 883 #define DEFINE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing
874 884
875 #define DEFINE_STATIC_REF_WILL_BE_PERSISTENT(type, name, arguments) \ 885 #define DEFINE_STATIC_REF_WILL_BE_PERSISTENT(type, name, arguments) \
876 DEFINE_STATIC_LOCAL(Persistent<type>, name, arguments) 886 DEFINE_STATIC_LOCAL(Persistent<type>, name, arguments)
877 887
878 #else // !ENABLE(OILPAN) 888 #else // !ENABLE(OILPAN)
879 889
880 template<typename T> 890 template<typename T>
881 class DummyBase { 891 class DummyBase {
882 public: 892 public:
883 DummyBase() { } 893 DummyBase() { }
884 ~DummyBase() { } 894 ~DummyBase() { }
885 }; 895 };
886 896
887 #define PassRefPtrWillBeRawPtr WTF::PassRefPtr 897 #define PassRefPtrWillBeRawPtr WTF::PassRefPtr
888 #define RefCountedWillBeGarbageCollected WTF::RefCounted 898 #define RefCountedWillBeGarbageCollected WTF::RefCounted
889 #define RefCountedWillBeGarbageCollectedFinalized WTF::RefCounted 899 #define RefCountedWillBeGarbageCollectedFinalized WTF::RefCounted
890 #define RefCountedWillBeRefCountedGarbageCollected WTF::RefCounted 900 #define RefCountedWillBeRefCountedGarbageCollected WTF::RefCounted
901 #define RefCountedGarbageCollectedWillBeGarbageCollectedFinalized WebCore::RefCo untedGarbageCollected
891 #define ThreadSafeRefCountedWillBeGarbageCollected WTF::ThreadSafeRefCounted 902 #define ThreadSafeRefCountedWillBeGarbageCollected WTF::ThreadSafeRefCounted
892 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WTF::ThreadSafeRefCo unted 903 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WTF::ThreadSafeRefCo unted
893 #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WTF::Thre adSafeRefCounted 904 #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WTF::Thre adSafeRefCounted
894 #define TreeSharedWillBeRefCountedGarbageCollected WebCore::TreeShared 905 #define TreeSharedWillBeRefCountedGarbageCollected WebCore::TreeShared
895 #define PersistentWillBeMember WebCore::Persistent 906 #define PersistentWillBeMember WebCore::Persistent
896 #define RefPtrWillBePersistent WTF::RefPtr 907 #define RefPtrWillBePersistent WTF::RefPtr
897 #define RefPtrWillBeRawPtr WTF::RefPtr 908 #define RefPtrWillBeRawPtr WTF::RefPtr
898 #define RefPtrWillBeMember WTF::RefPtr 909 #define RefPtrWillBeMember WTF::RefPtr
899 #define RefPtrWillBeWeakMember WTF::RefPtr 910 #define RefPtrWillBeWeakMember WTF::RefPtr
900 #define RefPtrWillBeCrossThreadPersistent WTF::RefPtr 911 #define RefPtrWillBeCrossThreadPersistent WTF::RefPtr
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
932 #define WillBeHeapTerminatedArrayBuilder WTF::TerminatedArrayBuilder 943 #define WillBeHeapTerminatedArrayBuilder WTF::TerminatedArrayBuilder
933 #define WillBeHeapLinkedStack WTF::LinkedStack 944 #define WillBeHeapLinkedStack WTF::LinkedStack
934 #define PersistentHeapHashSetWillBeHeapHashSet WebCore::PersistentHeapHashSet 945 #define PersistentHeapHashSetWillBeHeapHashSet WebCore::PersistentHeapHashSet
935 946
936 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeNoop(T* ptr) { retu rn adoptRef(ptr); } 947 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeNoop(T* ptr) { retu rn adoptRef(ptr); }
937 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCo llected(T* ptr) { return adoptRef(ptr); } 948 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCo llected(T* ptr) { return adoptRef(ptr); }
938 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeThreadSafeRefCounte dGarbageCollected(T* ptr) { return adoptRef(ptr); } 949 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeThreadSafeRefCounte dGarbageCollected(T* ptr) { return adoptRef(ptr); }
939 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) { retu rn adoptPtr(ptr); } 950 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) { retu rn adoptPtr(ptr); }
940 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeRefCountedGarbageCo llected(T* ptr) { return adoptPtr(ptr); } 951 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeRefCountedGarbageCo llected(T* ptr) { return adoptPtr(ptr); }
941 952
953 template<typename T> T* adoptRefCountedGarbageCollectedWillBeNoop(T* ptr)
954 {
955 static const bool isRefCountedGarbageCollected = WTF::IsSubclassOfTemplate<t ypename WTF::RemoveConst<T>::Type, RefCountedGarbageCollected>::value;
956 COMPILE_ASSERT(isRefCountedGarbageCollected, useAdoptRefWillBeNoop);
957 return adoptRefCountedGarbageCollected(ptr);
958 }
959
960
942 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED WTF_MAKE_FAST_ALLOCATED 961 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED WTF_MAKE_FAST_ALLOCATED
943 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) \ 962 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) \
944 public: \ 963 public: \
945 ~type(); \ 964 ~type(); \
946 private: 965 private:
947 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) \ 966 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) \
948 public: \ 967 public: \
949 virtual ~type(); \ 968 virtual ~type(); \
950 private: 969 private:
951 970
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
1183 struct ParamStorageTraits<T*> : public PointerParamStorageTraits<T*, WebCore::Is GarbageCollectedType<T>::value> { 1202 struct ParamStorageTraits<T*> : public PointerParamStorageTraits<T*, WebCore::Is GarbageCollectedType<T>::value> {
1184 }; 1203 };
1185 1204
1186 template<typename T> 1205 template<typename T>
1187 struct ParamStorageTraits<RawPtr<T> > : public PointerParamStorageTraits<T*, Web Core::IsGarbageCollectedType<T>::value> { 1206 struct ParamStorageTraits<RawPtr<T> > : public PointerParamStorageTraits<T*, Web Core::IsGarbageCollectedType<T>::value> {
1188 }; 1207 };
1189 1208
1190 } // namespace WTF 1209 } // namespace WTF
1191 1210
1192 #endif 1211 #endif
OLDNEW
« no previous file with comments | « Source/modules/speech/SpeechSynthesisUtterance.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698