13 #ifndef __UT_ArrayStringSet_h__
14 #define __UT_ArrayStringSet_h__
25 #define UT_STRINGREF_WRAPPER(return_type, name, qualifier) \
26 inline return_type name(const UT_StringRef &key) qualifier \
28 return Parent::name(UTmakeUnsafeRef(key)); \
33 #define UT_STRINGREF_WRAPPER_RANGE(iterator_type, name, qualifier) \
34 inline std::pair<iterator_type, iterator_type> \
35 name(const UT_StringRef &key) qualifier \
37 return Parent::name(UTmakeUnsafeRef(key)); \
59 #if 0 // The parent function isn't fully implemented yet.
74 {
return count(ref) > 0; }
93 *
this = std::move(result);
106 return std::make_pair(iter,
false);
113 return std::make_pair(iter,
false);
115 std::pair<iterator, bool>
insert(
const char *key)
128 #undef UT_STRINGREF_WRAPPER
129 #undef UT_STRINGREF_WRAPPER_RANGE
std::pair< iterator, bool > insert(UT_StringRef &&key)
std::pair< iterator, bool > insert(const value_type &value)
#define UT_STRINGREF_WRAPPER_RANGE(iterator_type, name, qualifier)
iterator end()
Returns a non-const end iterator for the set.
**But if you need a result
#define UT_STRINGREF_WRAPPER(return_type, name, qualifier)
bool contains(const UT_StringRef &ref) const
std::pair< iterator, bool > insert(const char *key)
iterator erase(iterator iter)
Parent::size_type size_type
SYS_FORCE_INLINE const UT_StringHolder & UTmakeUnsafeRef(const UT_StringRef &ref)
Convert a UT_StringRef into a UT_StringHolder that is a shallow reference.
iterator begin()
Returns a non-const iterator for the beginning of the set.
iterator find(const UT_StringHolder &key)
__hostdev__ uint64_t last(uint32_t i) const
bool containsAll(const S &src) const
std::pair< iterator, bool > insert(const UT_StringRef &key)
size_type count(const UT_StringHolder &key) const
Parent::const_iterator const_iterator
UT_ArrayStringSet & operator|=(const UT_ArrayStringSet &src)
Set-wise boolean operations.
UT_ArrayStringSet & operator-=(const UT_ArrayStringSet &src)
std::pair< const_iterator, const_iterator > equal_range(const UT_StringHolder &key) const
UT::ArraySet< UT_StringHolder > Parent
iterator_t< false > iterator
Iterator type for iterating over non-constant elements.
Parent::iterator iterator
UT_ArrayStringSet & operator&=(const UT_ArrayStringSet &src)
iterator erase(iterator pos)
PcpNodeRef_ChildrenIterator begin(const PcpNodeRef::child_const_range &r)
Support for range-based for loops for PcpNodeRef children ranges.