WPILibC++ 2023.4.3
SmallPtrSet.h File Reference

This file defines the SmallPtrSet class. More...

#include "wpi/EpochTracker.h"
#include "wpi/Compiler.h"
#include "wpi/ReverseIteration.h"
#include "wpi/type_traits.h"
#include <cassert>
#include <cstddef>
#include <cstdlib>
#include <cstring>
#include <initializer_list>
#include <iterator>
#include <utility>

Go to the source code of this file.

Classes

class  wpi::SmallPtrSetImplBase
 SmallPtrSetImplBase - This is the common code shared among all the SmallPtrSet<>'s, which is almost everything. More...
 
class  wpi::SmallPtrSetIteratorImpl
 SmallPtrSetIteratorImpl - This is the common base class shared between all instances of SmallPtrSetIterator. More...
 
class  wpi::SmallPtrSetIterator< PtrTy >
 SmallPtrSetIterator - This implements a const_iterator for SmallPtrSet. More...
 
struct  wpi::RoundUpToPowerOfTwoH< N, isPowerTwo >
 RoundUpToPowerOfTwoH - If N is not a power of two, increase it. More...
 
struct  wpi::RoundUpToPowerOfTwoH< N, false >
 
struct  wpi::RoundUpToPowerOfTwo< N >
 RoundUpToPowerOfTwo - This is a helper template that rounds N up to the next power of two (which means N itself if N is already a power of two). More...
 
class  wpi::SmallPtrSetImpl< PtrType >
 A templated base class for SmallPtrSet which provides the typesafe interface that is common across all small sizes. More...
 
class  wpi::SmallPtrSet< PtrType, SmallSize >
 SmallPtrSet - This class implements a set which is optimized for holding SmallSize or less elements. More...
 

Namespaces

namespace  wpi
 /file This file defines the SmallVector class.
 
namespace  std
 

Functions

template<typename PtrType >
bool wpi::operator== (const SmallPtrSetImpl< PtrType > &LHS, const SmallPtrSetImpl< PtrType > &RHS)
 Equality comparison for SmallPtrSet. More...
 
template<typename PtrType >
bool wpi::operator!= (const SmallPtrSetImpl< PtrType > &LHS, const SmallPtrSetImpl< PtrType > &RHS)
 Inequality comparison for SmallPtrSet. More...
 
template<class T , unsigned N>
void std::swap (wpi::SmallPtrSet< T, N > &LHS, wpi::SmallPtrSet< T, N > &RHS)
 Implement std::swap in terms of SmallPtrSet swap. More...
 

Detailed Description

This file defines the SmallPtrSet class.

See the doxygen comment for SmallPtrSetImplBase for more details on the algorithm used.