LLVM  4.0.0
Classes | Public Member Functions | Friends | List of all members
llvm::StringPool Class Reference

StringPool - An interned string pool. More...

#include <StringPool.h>

Public Member Functions

 StringPool ()
 
 ~StringPool ()
 
PooledStringPtr intern (StringRef Str)
 intern - Adds a string to the pool and returns a reference-counted pointer to it. More...
 
bool empty () const
 empty - Checks whether the pool is empty. More...
 

Friends

class PooledStringPtr
 

Detailed Description

StringPool - An interned string pool.

Use the intern method to add a string. Strings are removed automatically as PooledStringPtrs are destroyed.

Definition at line 42 of file StringPool.h.

Constructor & Destructor Documentation

StringPool::StringPool ( )

Definition at line 19 of file StringPool.cpp.

StringPool::~StringPool ( )

Definition at line 21 of file StringPool.cpp.

References assert(), and llvm::StringMapImpl::empty().

Member Function Documentation

bool llvm::StringPool::empty ( ) const
inline

empty - Checks whether the pool is empty.

Returns true if so.

Definition at line 70 of file StringPool.h.

References llvm::StringMapImpl::empty().

PooledStringPtr StringPool::intern ( StringRef  Str)

intern - Adds a string to the pool and returns a reference-counted pointer to it.

No additional memory is allocated if the string already exists in the pool.

Definition at line 25 of file StringPool.cpp.

References llvm::StringMapEntry< ValueTy >::Create(), llvm::StringMap< ValueTy, AllocatorTy >::end(), llvm::StringMap< ValueTy, AllocatorTy >::find(), llvm::StringMapEntry< ValueTy >::getValue(), I, llvm::StringMap< ValueTy, AllocatorTy >::insert(), and PooledStringPtr.

Friends And Related Function Documentation

friend class PooledStringPtr
friend

Definition at line 53 of file StringPool.h.

Referenced by intern().


The documentation for this class was generated from the following files: