Add explicit keywords.
[oota-llvm.git] / include / llvm / Support / StringPool.h
index 692befffe996f7848cba554ceff1ba59dbb5093b..8661f60e2ef9665e41ea68c3aec916e19ccdce11 100644 (file)
@@ -2,8 +2,8 @@
 //
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by Gordon Henriksen and is distributed under the
-// University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
 //
 //===----------------------------------------------------------------------===//
 //
@@ -29,7 +29,7 @@
 #ifndef LLVM_SUPPORT_STRINGPOOL_H
 #define LLVM_SUPPORT_STRINGPOOL_H
 
-#include <llvm/ADT/StringMap.h>
+#include "llvm/ADT/StringMap.h"
 #include <new>
 #include <cassert>
 
@@ -70,6 +70,10 @@ namespace llvm {
     /// reference-counted pointer to it. No additional memory is allocated if
     /// the string already exists in the pool.
     inline PooledStringPtr intern(const char *Str);
+    
+    /// empty - Checks whether the pool is empty. Returns true if so.
+    /// 
+    inline bool empty() const { return InternTable.empty(); }
   };
   
   /// PooledStringPtr - A pointer to an interned string. Use operator bool to
@@ -106,7 +110,7 @@ namespace llvm {
         return;
       if (--S->getValue().Refcount == 0) {
         S->getValue().Pool->InternTable.remove(S);
-        delete S;
+        S->Destroy();
       }
       S = 0;
     }