dolphin/Source/Core/Common
Léo Lam b08653d69d Common: Add a std::optional implementation
std::optional makes a few things a bit neater and less error prone.
However, we still cannot use C++17 (unfortunately), so this commit
adds an implementation of std::optional that we can use right now.

Based on https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/lib/gtl/optional.h
which seems to be fairly similar to C++17's <optional> and standards
compliant. It's one of the few implementations that handle propagating
type traits like copy constructibility, just like libc++/libstdc++.
2017-06-03 12:36:24 +02:00
..
Compat
Config Section: Fix Section::Get 2017-05-13 15:22:29 +01:00
Crypto
GL
Logging
Align.h
Analytics.cpp
Analytics.h
Arm64Emitter.cpp
Arm64Emitter.h
ArmCommon.h
ArmCPUDetect.cpp ArmCPUDetect: Add missing include 2017-04-21 11:03:40 +01:00
Assert.h
Atomic_GCC.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
Atomic_Win32.h
Atomic.h
BitField.h
BitField.natvis
BitSet.h constexpr added to BitSet.h. conflicts solved 2016-06-25 10:58:53 -03:00
BitUtils.h
BlockingLoop.h
CDUtils.cpp
CDUtils.h
ChunkFile.h
CMakeLists.txt
CodeBlock.h
ColorUtil.cpp
ColorUtil.h
Common.h
Common.vcxproj
Common.vcxproj.filters
CommonFuncs.cpp
CommonFuncs.h Rename Misc.cpp to CommonFuncs.cpp 2017-04-15 00:41:09 +02:00
CommonPaths.h
CommonTypes.h
CPUDetect.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
DebugInterface.h Fix memory breakpoint when checking the middle of the data 2017-03-18 22:48:57 -04:00
ENetUtil.cpp
ENetUtil.h
Event.h
FifoQueue.h
FileSearch.cpp
FileSearch.h
FileUtil.cpp
FileUtil.h Add some missing INI files to FileUtil 2017-02-16 09:33:50 +01:00
FixedSizeQueue.h
Flag.h
FPURoundMode.h
GekkoDisassembler.cpp
GekkoDisassembler.h
GenericCPUDetect.cpp
GenericFPURoundMode.cpp
Hash.cpp
Hash.h
IniFile.cpp
IniFile.h
Intrinsics.h Common: Support for function-specific instruction set target on x64 2017-01-24 20:04:55 +10:00
JitRegister.cpp
JitRegister.h
LinearDiskCache.h
make_scmrev.h.js
MathUtil.cpp MathUtil: References can be const 2017-04-12 06:15:18 +01:00
MathUtil.h
MD5.cpp
MD5.h
MemArena.cpp Remove code for only allocating low memory 2017-05-20 09:35:53 +02:00
MemArena.h
MemoryUtil.cpp
MemoryUtil.h
MsgHandler.cpp
MsgHandler.h
NandPaths.cpp
NandPaths.h NandPaths: Make .h function order match .cpp 2017-05-06 17:51:50 +02:00
Network.cpp Common: Namespace Network.h/.cpp 2017-01-17 20:46:48 -05:00
Network.h
NonCopyable.h
PcapFile.cpp
PcapFile.h
PerformanceCounter.cpp
PerformanceCounter.h
Profiler.cpp
Profiler.h
scmrev.h.in
SCMRevGen.vcxproj
ScopeGuard.h
SDCardUtil.cpp
SDCardUtil.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
Semaphore.h Common: Add a Semaphore wrapper class 2016-10-01 01:09:12 +10:00
SettingsHandler.cpp Common: Move byte swapping utilities into their own header 2017-03-03 17:18:18 -05:00
SettingsHandler.h
StringUtil.cpp Convert VolumeDirectory names back to SHIFT-JIS (issue #9988) 2017-05-01 14:08:47 +02:00
StringUtil.h
Swap.h
SymbolDB.cpp SymbolDB: Simplify GetSymbolsFromHash 2017-02-18 06:30:20 -05:00
SymbolDB.h
SysConf.cpp Common: Move byte swapping utilities into their own header 2017-03-03 17:18:18 -05:00
SysConf.h
Thread.cpp
Thread.h
Timer.cpp
Timer.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
TraversalClient.cpp Improve netplay setup dialog UX 2016-07-23 20:58:51 +02:00
TraversalClient.h
TraversalProto.h
TraversalServer.cpp
ucrtFreadWorkaround.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
Version.cpp Fix in-tree build (cmake .) on OS X. 2016-06-25 23:57:17 -04:00
x64ABI.cpp
x64ABI.h
x64CPUDetect.cpp
x64Emitter.cpp
x64Emitter.h
x64FPURoundMode.cpp
x64Reg.h