LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Friends | List of all members
llvm::StringPool Class Reference

#include <StringPool.h>

Public Member Functions

 StringPool ()
 
 ~StringPool ()
 
PooledStringPtr intern (StringRef Str)
 
bool empty () const
 

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 43 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 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 71 of file StringPool.h.

References llvm::StringMapImpl::empty().

Referenced by llvm::Function::clearGC(), and llvm::DwarfUnits::emitStrings().

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::StringRef::begin(), llvm::StringMapEntry< ValueTy >::Create(), llvm::StringRef::end(), llvm::StringMap< ValueTy, AllocatorTy >::end(), llvm::StringMap< ValueTy, AllocatorTy >::find(), llvm::StringMapEntry< ValueTy >::getValue(), I, llvm::StringMap< ValueTy, AllocatorTy >::insert(), and PooledStringPtr.

Referenced by llvm::Function::setGC().

Friends And Related Function Documentation

friend class PooledStringPtr
friend

Definition at line 54 of file StringPool.h.

Referenced by intern().


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