llvm-6502/include/llvm/ADT
Jordan Rose 771ac70aed Add an emplace(...) method to llvm::Optional<T>.
This can be used for in-place initialization of non-moveable types.
For compilers that don't support variadic templates, only up to four
arguments are supported. We can always add more, of course, but this
should be good enough until we move to a later MSVC that has full
support for variadic templates.

Inspired by std::experimental::optional from the "Library Fundamentals" C++ TS.
Reviewed by David Blaikie.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218732 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-01 02:12:35 +00:00
..
APFloat.h
APInt.h APInt: Make self-move-assignment a no-op to fix stage3 clang-cl 2014-08-12 22:01:39 +00:00
APSInt.h
ArrayRef.h Add conversion constructor to convert ArrayRef<T*> to ArrayRef<const T*>. Reviewed with Chandler and David Blaikie. 2014-08-29 06:01:43 +00:00
BitVector.h
DAGDeltaAlgorithm.h
DeltaAlgorithm.h
DenseMap.h Fix SmallDenseMap assignment operator. 2014-08-04 22:18:25 +00:00
DenseMapInfo.h
DenseSet.h
DepthFirstIterator.h Use range based for loops to avoid needing to re-mention SmallPtrSet size. 2014-08-24 23:23:06 +00:00
edit_distance.h
EquivalenceClasses.h
FoldingSet.h
GraphTraits.h
Hashing.h
ilist_node.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
ilist.h
ImmutableList.h
ImmutableMap.h
ImmutableSet.h
IndexedMap.h
IntEqClasses.h
IntervalMap.h
IntrusiveRefCntPtr.h [ADT/IntrusiveRefCntPtr] Give friend access to IntrusiveRefCntPtr<X> so the relevant move constructor can access 'Obj'. 2014-09-23 06:06:43 +00:00
iterator_range.h
iterator.h
MapVector.h
None.h
Optional.h Add an emplace(...) method to llvm::Optional<T>. 2014-10-01 02:12:35 +00:00
PackedVector.h
PointerIntPair.h
PointerUnion.h
PostOrderIterator.h
PriorityQueue.h
SCCIterator.h
ScopedHashTable.h
SetOperations.h
SetVector.h
SmallBitVector.h
SmallPtrSet.h Prevent use of the implicit copy constructor on SmallPtrSetImpl. An accidental copy caused my SmallPtrSet->SmallPtrSetImpl conversion commit to fail the other day. 2014-08-19 06:57:14 +00:00
SmallSet.h
SmallString.h
SmallVector.h house cleaning: "Don’t duplicate function or class name at the beginning of the comment." 2014-09-03 20:08:51 +00:00
SparseBitVector.h
SparseMultiSet.h
SparseSet.h
Statistic.h
STLExtras.h Add a trivial functor for use with unique_ptrs managing memory that needs to be freed rather than deleted. 2014-08-29 22:05:31 +00:00
StringExtras.h
StringMap.h
StringRef.h Add missing const to StringRef.copy() 2014-08-30 02:29:49 +00:00
StringSet.h
StringSwitch.h
TinyPtrVector.h Simplify creation of a bunch of ArrayRefs by using None, makeArrayRef or just letting them be implicitly created. 2014-08-27 05:25:25 +00:00
Triple.h Add hsail and amdil64 to Triple 2014-09-19 19:52:11 +00:00
Twine.h
UniqueVector.h
VariadicFunction.h Simplify creation of a bunch of ArrayRefs by using None, makeArrayRef or just letting them be implicitly created. 2014-08-27 05:25:25 +00:00