Reviewed by Maciej.
[WebKit-https.git] / JavaScriptCore / kxmlcore / HashTable.h
index adc697d5094bd883033a964bd11dc954024554b8..31bf57736a468ddddd54947d30e9ab1163c7be09 100644 (file)
@@ -835,6 +835,14 @@ namespace KXMLCore {
     template<typename ValueTraits, typename ValueStorageTraits> struct NeedsRef {
         static const bool value = ValueTraits::needsRef && !ValueStorageTraits::needsRef;
     };
+    template<typename FirstTraits, typename SecondTraits, typename ValueStorageTraits>
+    struct NeedsRef<PairBaseHashTraits<FirstTraits, SecondTraits>, ValueStorageTraits> {
+        typedef typename ValueStorageTraits::FirstTraits FirstStorageTraits;
+        typedef typename ValueStorageTraits::SecondTraits SecondStorageTraits;
+        static const bool firstNeedsRef = NeedsRef<FirstTraits, FirstStorageTraits>::value;
+        static const bool secondNeedsRef = NeedsRef<SecondTraits, SecondStorageTraits>::value;
+        static const bool value = firstNeedsRef || secondNeedsRef;
+    };
 
     template<bool needsRef, typename ValueTraits> struct RefCounterBase;