LLVM API Documentation

Classes | Namespaces | Functions | Variables
STLExtras.h File Reference
#include "llvm/Support/Compiler.h"
#include <cstddef>
#include <cstdlib>
#include <functional>
#include <iterator>
#include <memory>
#include <utility>
Include dependency graph for STLExtras.h:

Go to the source code of this file.

Classes

struct  llvm::identity< Ty >
struct  llvm::less_ptr< Ty >
struct  llvm::greater_ptr< Ty >
class  llvm::function_ref< Ret()>
class  llvm::function_ref< Ret(Param1)>
class  llvm::function_ref< Ret(Param1, Param2)>
class  llvm::function_ref< Ret(Param1, Param2, Param3)>
class  llvm::mapped_iterator< RootIt, UnaryFunc >
struct  llvm::less_first
 Function object to check whether the first component of a std::pair compares less than the first component of another std::pair. More...
struct  llvm::less_second
 Function object to check whether the second component of a std::pair compares less than the second component of another std::pair. More...
struct  llvm::FreeDeleter
struct  llvm::pair_hash< First, Second >

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


Functions

template<class T >
void llvm::deleter (T *Ptr)
template<class _Iterator , class Func >
mapped_iterator< _Iterator, Func > llvm::operator+ (typename mapped_iterator< _Iterator, Func >::difference_type N, const mapped_iterator< _Iterator, Func > &X)
template<class ItTy , class FuncTy >
mapped_iterator< ItTy, FuncTy > llvm::map_iterator (const ItTy &I, FuncTy F)
template<class T , std::size_t N>
LLVM_CONSTEXPR size_t llvm::array_lengthof (T(&)[N])
 Find the length of an array.
template<typename T >
int llvm::array_pod_sort_comparator (const void *P1, const void *P2)
 Adapt std::less<T> for array_pod_sort.
template<class IteratorTy >
void llvm::array_pod_sort (IteratorTy Start, IteratorTy End)
template<class IteratorTy >
void llvm::array_pod_sort (IteratorTy Start, IteratorTy End, int(*Compare)(const typename std::iterator_traits< IteratorTy >::value_type *, const typename std::iterator_traits< IteratorTy >::value_type *))
template<typename Container >
void llvm::DeleteContainerPointers (Container &C)
template<typename Container >
void llvm::DeleteContainerSeconds (Container &C)
template<class T >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique ()
template<class T , class Arg1 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1)
template<class T , class Arg1 , class Arg2 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2)
template<class T , class Arg1 , class Arg2 , class Arg3 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3)
template<class T , class Arg1 , class Arg2 , class Arg3 , class Arg4 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3, Arg4 &&arg4)
template<class T , class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3, Arg4 &&arg4, Arg5 &&arg5)
template<class T , class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3, Arg4 &&arg4, Arg5 &&arg5, Arg6 &&arg6)
template<class T , class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3, Arg4 &&arg4, Arg5 &&arg5, Arg6 &&arg6, Arg7 &&arg7)
template<class T , class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 , class Arg8 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3, Arg4 &&arg4, Arg5 &&arg5, Arg6 &&arg6, Arg7 &&arg7, Arg8 &&arg8)
template<class T , class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 , class Arg8 , class Arg9 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3, Arg4 &&arg4, Arg5 &&arg5, Arg6 &&arg6, Arg7 &&arg7, Arg8 &&arg8, Arg9 &&arg9)
template<class T , class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 , class Arg8 , class Arg9 , class Arg10 >
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
llvm::make_unique (Arg1 &&arg1, Arg2 &&arg2, Arg3 &&arg3, Arg4 &&arg4, Arg5 &&arg5, Arg6 &&arg6, Arg7 &&arg7, Arg8 &&arg8, Arg9 &&arg9, Arg10 &&arg10)
template<class T >
std::enable_if< std::is_array
< T >::value &&std::extent< T >
::value==0, std::unique_ptr< T >
>::type 
llvm::make_unique (size_t n)

Variables

int(*)(const void *, const void *) llvm::get_array_pod_sort_comparator (const T &)