HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_ArrayStringSet Class Reference

#include <UT_ArrayStringSet.h>

+ Inheritance diagram for UT_ArrayStringSet:

Public Types

typedef UT::ArraySet
< UT_StringHolder
Parent
 
typedef Parent::const_iterator const_iterator
 
typedef Parent::iterator iterator
 
typedef Parent::size_type size_type
 
- Public Types inherited from UT::ArraySet< UT_StringHolder >
typedef ArraySet
< UT_StringHolder, false,
128, DefaultClearer
< UT_StringHolder >
, hboost::hash
< UT_StringHolder >
, std::equal_to
< UT_StringHolder > > 
set_type
 
typedef UT_StringHolder key_type
 
typedef UT_StringHolder value_type
 
typedef std::size_t size_type
 
typedef std::ptrdiff_t difference_type
 
typedef hboost::hash
< UT_StringHolder
hasher
 
typedef std::equal_to
< UT_StringHolder
key_equal
 
typedef value_typereference
 
typedef const value_typeconst_reference
 
typedef value_typepointer
 
typedef const value_typeconst_pointer
 
typedef DefaultClearer
< UT_StringHolder
clearer_type
 
typedef iterator_t< false > iterator
 Iterator type for iterating over non-constant elements. More...
 

Public Member Functions

iterator erase (iterator pos)
 
bool contains (const UT_StringRef &ref) const
 
bool contains (const UT_ArrayStringSet &src) const
 
UT_ArrayStringSetoperator|= (const UT_ArrayStringSet &src)
 Set-wise boolean operations. More...
 
UT_ArrayStringSetoperator&= (const UT_ArrayStringSet &src)
 
UT_ArrayStringSetoperator-= (const UT_ArrayStringSet &src)
 
std::pair< iterator, bool > insert (const UT_StringRef &key)
 
std::pair< iterator, bool > insert (UT_StringRef &&key)
 
std::pair< iterator, bool > insert (const char *key)
 
- Public Member Functions inherited from UT::ArraySet< UT_StringHolder >
 ArraySet ()
 
 ArraySet (size_type init_bucket_count)
 
 ArraySet (set_type &&that)
 Move constructor, destroying the source. More...
 
 ArraySet (const set_type &that)
 
 ArraySet (INPUT_ITERATOR start_input, INPUT_ITERATOR end_input, size_type init_bucket_count=0)
 Inserts all of the items in the range [start_input,end_input). More...
 
 ArraySet (std::initializer_list< value_type > init, size_type init_bucket_count=0)
 
set_typeoperator= (const set_type &that)
 
set_typeoperator= (std::initializer_list< value_type > init)
 
set_typeoperator= (set_type &&that)
 
bool operator== (const set_type &that) const
 
bool operator!= (const set_type &that) const
 
void swap (set_type &that)
 Swaps another set with this one. More...
 
 ~ArraySet ()
 
bool empty () const
 Returns true iff there are no items in the set. More...
 
size_type size () const
 Returns the number of items in the set. More...
 
void clear ()
 
void destroy ()
 Removes all items from the set and frees all the memory. More...
 
size_type bucket_count () const
 Returns the current number of buckets. More...
 
size_type bucket_size (size_type i) const
 
float load_factor () const
 Returns the current portion of buckets that are occupied. More...
 
void rehash (size_type new_num_buckets)
 
void reserve (size_type num_items)
 
void setNumBuckets (size_type new_num_buckets)
 
void bumpNumBuckets (size_type new_num_items)
 
iterator begin ()
 Returns a non-const iterator for the beginning of the set. More...
 
const_iterator begin () const
 Returns a const iterator for the beginning of the set. More...
 
const_iterator cbegin () const
 Returns a const iterator for the beginning of the set. More...
 
iterator end ()
 Returns a non-const end iterator for the set. More...
 
const_iterator end () const
 Returns a const end iterator for the set. More...
 
const_iterator cend () const
 Returns a const end iterator for the set. More...
 
size_type count (const UT_StringHolder &key) const
 
bool contains (const UT_StringHolder &key) const
 
void insert (INPUT_ITERATOR start_input, INPUT_ITERATOR end_input)
 Inserts all of the items in the range [start_input,end_input). More...
 
void insert (std::initializer_list< value_type > list)
 Inserts all of the items from the initializer_list. More...
 
std::pair< iterator, bool > emplace (Args &&...args)
 
iterator erase (iterator iter)
 
size_type erase (const UT_StringHolder &key)
 
int64 getMemoryUsage (bool inclusive) const
 
SYS_FORCE_INLINE void forEach (FUNCTOR &&functor) const
 
iterator find (const UT_StringHolder &key)
 
const_iterator find (const UT_StringHolder &key) const
 
std::pair< const_iterator,
const_iterator > 
equal_range (const UT_StringHolder &key) const
 
std::pair< iterator, iteratorequal_range (const UT_StringHolder &key)
 
std::pair< iterator, bool > insert (const value_type &value)
 
std::pair< iterator, bool > insert (value_type &&value)
 

Additional Inherited Members

- Static Public Member Functions inherited from UT::ArraySet< UT_StringHolder >
static size_type max_size ()
 
static size_type max_bucket_count ()
 
static float max_load_factor ()
 
static hasher hash_function ()
 
static key_equal key_eq ()
 
- Protected Member Functions inherited from UT::ArraySet< UT_StringHolder >
pointer searchStart (const UT_StringHolder &key)
 
const_pointer searchStart (const UT_StringHolder &key) const
 
bool insertHelper (pointer pstart, size_type nbuckets, const value_type &value, pointer &destp)
 
- Static Protected Member Functions inherited from UT::ArraySet< UT_StringHolder >
static size_type minBuckets (size_type size)
 
- Protected Attributes inherited from UT::ArraySet< UT_StringHolder >
pointer myBuckets
 
size_type myNumBuckets
 

Detailed Description

UT_ArrayStringSet is a simple specialization of a UT::ArraySet that has UT_StringHolder as its key type which allows C strings to be used. If you know that a string will not be destroyed during the set's lifetime, UTmakeUnsafeRef can be used to insert a shallow reference. NOTE: This class used to not allow empty string as a key, but now it should work.

Definition at line 46 of file UT_ArrayStringSet.h.

Member Typedef Documentation

typedef Parent::const_iterator UT_ArrayStringSet::const_iterator

Definition at line 51 of file UT_ArrayStringSet.h.

Member Function Documentation

bool UT_ArrayStringSet::contains ( const UT_StringRef ref) const
inline

Definition at line 73 of file UT_ArrayStringSet.h.

bool UT_ArrayStringSet::contains ( const UT_ArrayStringSet src) const
inline

Definition at line 76 of file UT_ArrayStringSet.h.

iterator UT_ArrayStringSet::erase ( iterator  pos)
inline

Definition at line 58 of file UT_ArrayStringSet.h.

std::pair<iterator, bool> UT_ArrayStringSet::insert ( const UT_StringRef key)
inline

Definition at line 100 of file UT_ArrayStringSet.h.

std::pair<iterator, bool> UT_ArrayStringSet::insert ( UT_StringRef &&  key)
inline

Definition at line 107 of file UT_ArrayStringSet.h.

std::pair<iterator, bool> UT_ArrayStringSet::insert ( const char *  key)
inline

Definition at line 114 of file UT_ArrayStringSet.h.

UT_ArrayStringSet& UT_ArrayStringSet::operator&= ( const UT_ArrayStringSet src)
inline

Definition at line 87 of file UT_ArrayStringSet.h.

UT_ArrayStringSet& UT_ArrayStringSet::operator-= ( const UT_ArrayStringSet src)
inline

Definition at line 94 of file UT_ArrayStringSet.h.

UT_ArrayStringSet& UT_ArrayStringSet::operator|= ( const UT_ArrayStringSet src)
inline

Set-wise boolean operations.

Definition at line 83 of file UT_ArrayStringSet.h.


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