]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - parser/SourceProviderCache.h
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / parser / SourceProviderCache.h
index e94230d101dd49ce92094e9402b1a39b3a1ee1ea..cded96878623f8bc3908b73d7967a58e619255a9 100644 (file)
 
 #include "SourceProviderCacheItem.h"
 #include <wtf/HashMap.h>
-#include <wtf/OwnPtr.h>
-#include <wtf/PassOwnPtr.h>
+#include <wtf/RefCounted.h>
 
 namespace JSC {
 
-class SourceProviderCache {
+class SourceProviderCache : public RefCounted<SourceProviderCache> {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
-    SourceProviderCache() : m_contentByteSize(0) {}
+    SourceProviderCache() }
     JS_EXPORT_PRIVATE ~SourceProviderCache();
 
     JS_EXPORT_PRIVATE void clear();
-    JS_EXPORT_PRIVATE unsigned byteSize() const;
-    void add(int sourcePosition, PassOwnPtr<SourceProviderCacheItem>, unsigned size);
+    void add(int sourcePosition, std::unique_ptr<SourceProviderCacheItem>);
     const SourceProviderCacheItem* get(int sourcePosition) const { return m_map.get(sourcePosition); }
 
 private:
-    HashMap<int, OwnPtr<SourceProviderCacheItem> > m_map;
-    unsigned m_contentByteSize;
+    HashMap<int, std::unique_ptr<SourceProviderCacheItem>> m_map;
 };
 
 }