OLD | NEW |
---|---|
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 658 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
669 // transition type be unqualified, would dually not work for template | 669 // transition type be unqualified, would dually not work for template |
670 // aliases. So, slightly unfortunately, fall back/down to the lowest | 670 // aliases. So, slightly unfortunately, fall back/down to the lowest |
671 // commmon denominator of using CPP macros only. | 671 // commmon denominator of using CPP macros only. |
672 #if ENABLE(OILPAN) | 672 #if ENABLE(OILPAN) |
673 #define PassRefPtrWillBeRawPtr WTF::RawPtr | 673 #define PassRefPtrWillBeRawPtr WTF::RawPtr |
674 #define RefCountedWillBeGarbageCollected WebCore::GarbageCollected | 674 #define RefCountedWillBeGarbageCollected WebCore::GarbageCollected |
675 #define RefCountedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinal ized | 675 #define RefCountedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinal ized |
676 #define RefCountedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCol lected | 676 #define RefCountedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCol lected |
677 #define ThreadSafeRefCountedWillBeGarbageCollected WebCore::GarbageCollected | 677 #define ThreadSafeRefCountedWillBeGarbageCollected WebCore::GarbageCollected |
678 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WebCore::GarbageColl ectedFinalized | 678 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WebCore::GarbageColl ectedFinalized |
679 #define ThreadSafeRefCountedWillBeRefCountedGarbageCollected WebCore::RefCounted GarbageCollected | |
Mads Ager (chromium)
2014/03/27 11:06:49
Let's remove these macros. It seems dangerous to u
keishi
2014/04/03 06:53:19
Done.
| |
680 #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WebCore:: ThreadSafeRefCountedGarbageCollected | |
679 #define RefPtrWillBePersistent WebCore::Persistent | 681 #define RefPtrWillBePersistent WebCore::Persistent |
680 #define RefPtrWillBeRawPtr WTF::RawPtr | 682 #define RefPtrWillBeRawPtr WTF::RawPtr |
681 #define RefPtrWillBeMember WebCore::Member | 683 #define RefPtrWillBeMember WebCore::Member |
682 #define RefPtrWillBeCrossThreadPersistent WebCore::CrossThreadPersistent | 684 #define RefPtrWillBeCrossThreadPersistent WebCore::CrossThreadPersistent |
683 #define RawPtrWillBeMember WebCore::Member | 685 #define RawPtrWillBeMember WebCore::Member |
684 #define RawPtrWillBeWeakMember WebCore::WeakMember | 686 #define RawPtrWillBeWeakMember WebCore::WeakMember |
685 #define OwnPtrWillBeMember WebCore::Member | 687 #define OwnPtrWillBeMember WebCore::Member |
686 #define OwnPtrWillBePersistent WebCore::Persistent | 688 #define OwnPtrWillBePersistent WebCore::Persistent |
687 #define OwnPtrWillBeRawPtr WTF::RawPtr | 689 #define OwnPtrWillBeRawPtr WTF::RawPtr |
688 #define PassOwnPtrWillBeRawPtr WTF::RawPtr | 690 #define PassOwnPtrWillBeRawPtr WTF::RawPtr |
(...skipping 21 matching lines...) Expand all Loading... | |
710 return PassRefPtrWillBeRawPtr<T>(ptr); | 712 return PassRefPtrWillBeRawPtr<T>(ptr); |
711 } | 713 } |
712 | 714 |
713 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCo llected(T* ptr) | 715 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCo llected(T* ptr) |
714 { | 716 { |
715 static const bool isRefCountedGarbageCollected = WTF::IsSubclassOfTemplate<T , RefCountedGarbageCollected>::value; | 717 static const bool isRefCountedGarbageCollected = WTF::IsSubclassOfTemplate<T , RefCountedGarbageCollected>::value; |
716 COMPILE_ASSERT(isRefCountedGarbageCollected, useAdoptRefWillBeNoop); | 718 COMPILE_ASSERT(isRefCountedGarbageCollected, useAdoptRefWillBeNoop); |
717 return PassRefPtrWillBeRawPtr<T>(adoptRefCountedGarbageCollected(ptr)); | 719 return PassRefPtrWillBeRawPtr<T>(adoptRefCountedGarbageCollected(ptr)); |
718 } | 720 } |
719 | 721 |
722 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeThreadSafeRefCounte dGarbageCollected(T* ptr) | |
723 { | |
724 static const bool isThreadSafeRefCountedGarbageCollected = WTF::IsSubclassOf Template<T, ThreadSafeRefCountedGarbageCollected>::value; | |
725 COMPILE_ASSERT(isThreadSafeRefCountedGarbageCollected, useAdoptRefWillBeNoop ); | |
726 return PassRefPtrWillBeRawPtr<T>(adoptRefCountedGarbageCollected(ptr)); | |
727 } | |
728 | |
720 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) | 729 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) |
721 { | 730 { |
722 static const bool notRefCountedGarbageCollected = !WTF::IsSubclassOfTemplate <T, RefCountedGarbageCollected>::value; | 731 static const bool notRefCountedGarbageCollected = !WTF::IsSubclassOfTemplate <T, RefCountedGarbageCollected>::value; |
723 static const bool notRefCounted = !WTF::IsSubclassOfTemplate<T, RefCounted>: :value; | 732 static const bool notRefCounted = !WTF::IsSubclassOfTemplate<T, RefCounted>: :value; |
724 COMPILE_ASSERT(notRefCountedGarbageCollected, useAdoptRefCountedWillBeRefCou ntedGarbageCollected); | 733 COMPILE_ASSERT(notRefCountedGarbageCollected, useAdoptRefCountedWillBeRefCou ntedGarbageCollected); |
725 COMPILE_ASSERT(notRefCounted, youMustAdopt); | 734 COMPILE_ASSERT(notRefCounted, youMustAdopt); |
726 return PassOwnPtrWillBeRawPtr<T>(ptr); | 735 return PassOwnPtrWillBeRawPtr<T>(ptr); |
727 } | 736 } |
728 | 737 |
729 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED // do nothing when oilpan is ena bled. | 738 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED // do nothing when oilpan is ena bled. |
730 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing | 739 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing |
731 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing | 740 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing |
732 #define DEFINE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing | 741 #define DEFINE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing |
733 | 742 |
734 #else // !ENABLE(OILPAN) | 743 #else // !ENABLE(OILPAN) |
735 | 744 |
736 template<typename T> | 745 template<typename T> |
737 class DummyBase { | 746 class DummyBase { |
738 public: | 747 public: |
739 DummyBase() { } | 748 DummyBase() { } |
740 ~DummyBase() { } | 749 ~DummyBase() { } |
741 }; | 750 }; |
742 | 751 |
743 #define PassRefPtrWillBeRawPtr WTF::PassRefPtr | 752 #define PassRefPtrWillBeRawPtr WTF::PassRefPtr |
744 #define RefCountedWillBeGarbageCollected WTF::RefCounted | 753 #define RefCountedWillBeGarbageCollected WTF::RefCounted |
745 #define RefCountedWillBeGarbageCollectedFinalized WTF::RefCounted | 754 #define RefCountedWillBeGarbageCollectedFinalized WTF::RefCounted |
746 #define RefCountedWillBeRefCountedGarbageCollected WTF::RefCounted | 755 #define RefCountedWillBeRefCountedGarbageCollected WTF::RefCounted |
747 #define ThreadSafeRefCountedWillBeGarbageCollected WTF::ThreadSafeRefCounted | 756 #define ThreadSafeRefCountedWillBeGarbageCollected WTF::ThreadSafeRefCounted |
748 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WTF::ThreadSafeRefCo unted | 757 #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WTF::ThreadSafeRefCo unted |
758 #define ThreadSafeRefCountedWillBeRefCountedGarbageCollected WTF::ThreadSafeRefC ounted | |
Mads Ager (chromium)
2014/03/27 11:06:49
And remove this one too.
keishi
2014/04/03 06:53:19
Done.
| |
759 #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WTF::Thre adSafeRefCounted | |
749 #define RefPtrWillBePersistent WTF::RefPtr | 760 #define RefPtrWillBePersistent WTF::RefPtr |
750 #define RefPtrWillBeRawPtr WTF::RefPtr | 761 #define RefPtrWillBeRawPtr WTF::RefPtr |
751 #define RefPtrWillBeMember WTF::RefPtr | 762 #define RefPtrWillBeMember WTF::RefPtr |
752 #define RefPtrWillBeCrossThreadPersistent WTF::RefPtr | 763 #define RefPtrWillBeCrossThreadPersistent WTF::RefPtr |
753 #define RawPtrWillBeMember WTF::RawPtr | 764 #define RawPtrWillBeMember WTF::RawPtr |
754 #define RawPtrWillBeWeakMember WTF::RawPtr | 765 #define RawPtrWillBeWeakMember WTF::RawPtr |
755 #define OwnPtrWillBeMember WTF::OwnPtr | 766 #define OwnPtrWillBeMember WTF::OwnPtr |
756 #define OwnPtrWillBePersistent WTF::OwnPtr | 767 #define OwnPtrWillBePersistent WTF::OwnPtr |
757 #define OwnPtrWillBeRawPtr WTF::OwnPtr | 768 #define OwnPtrWillBeRawPtr WTF::OwnPtr |
758 #define PassOwnPtrWillBeRawPtr WTF::PassOwnPtr | 769 #define PassOwnPtrWillBeRawPtr WTF::PassOwnPtr |
759 #define NoBaseWillBeGarbageCollected WebCore::DummyBase | 770 #define NoBaseWillBeGarbageCollected WebCore::DummyBase |
760 #define NoBaseWillBeGarbageCollectedFinalized WebCore::DummyBase | 771 #define NoBaseWillBeGarbageCollectedFinalized WebCore::DummyBase |
761 #define WillBeHeapHashMap WTF::HashMap | 772 #define WillBeHeapHashMap WTF::HashMap |
762 #define WillBePersistentHeapHashMap WTF::HashMap | 773 #define WillBePersistentHeapHashMap WTF::HashMap |
763 #define WillBeHeapHashSet WTF::HashSet | 774 #define WillBeHeapHashSet WTF::HashSet |
764 #define WillBePersistentHeapHashSet WTF::HashSet | 775 #define WillBePersistentHeapHashSet WTF::HashSet |
765 #define WillBeHeapVector WTF::Vector | 776 #define WillBeHeapVector WTF::Vector |
766 #define WillBePersistentHeapVector WTF::Vector | 777 #define WillBePersistentHeapVector WTF::Vector |
767 #define WillBeGarbageCollectedMixin WebCore::DummyBase<void> | 778 #define WillBeGarbageCollectedMixin WebCore::DummyBase<void> |
768 #define WillBeHeapSupplement WebCore::Supplement | 779 #define WillBeHeapSupplement WebCore::Supplement |
769 #define WillBeHeapSupplementable WebCore::Supplementable | 780 #define WillBeHeapSupplementable WebCore::Supplementable |
770 #define WillBeHeapTerminatedArray WTF::TerminatedArray | 781 #define WillBeHeapTerminatedArray WTF::TerminatedArray |
771 #define WillBeHeapTerminatedArrayBuilder WTF::TerminatedArrayBuilder | 782 #define WillBeHeapTerminatedArrayBuilder WTF::TerminatedArrayBuilder |
772 #define WillBeHeapLinkedStack WTF::LinkedStack | 783 #define WillBeHeapLinkedStack WTF::LinkedStack |
773 | 784 |
774 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeNoop(T* ptr) { retu rn adoptRef(ptr); } | 785 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeNoop(T* ptr) { retu rn adoptRef(ptr); } |
775 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCo llected(T* ptr) { return adoptRef(ptr); } | 786 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCo llected(T* ptr) { return adoptRef(ptr); } |
787 template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeThreadSafeRefCounte dGarbageCollected(T* ptr) { return adoptRef(ptr); } | |
776 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) { retu rn adoptPtr(ptr); } | 788 template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) { retu rn adoptPtr(ptr); } |
777 | 789 |
778 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED WTF_MAKE_FAST_ALLOCATED | 790 #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED WTF_MAKE_FAST_ALLOCATED |
779 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) \ | 791 #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) \ |
780 public: \ | 792 public: \ |
781 ~type(); \ | 793 ~type(); \ |
782 private: | 794 private: |
783 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) \ | 795 #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) \ |
784 public: \ | 796 public: \ |
785 virtual ~type(); \ | 797 virtual ~type(); \ |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
929 }; | 941 }; |
930 | 942 |
931 template<typename T, typename U> | 943 template<typename T, typename U> |
932 struct NeedsTracing<HashMap<T, U> > { | 944 struct NeedsTracing<HashMap<T, U> > { |
933 static const bool value = false; | 945 static const bool value = false; |
934 }; | 946 }; |
935 | 947 |
936 } // namespace WTF | 948 } // namespace WTF |
937 | 949 |
938 #endif | 950 #endif |
OLD | NEW |