mirror of
https://github.com/libretro/bsnes-libretro.git
synced 2024-11-23 08:59:40 +00:00
6871e0e32a
byuu says: I've implemented a lot more TLCS900H instructions. There are currently 20 missing spots, all of which are unique instructions (well, MINC and MDEC could be considered pairs of 3 each), from a map of 1024 slots. After that, I have to write the disassembler. Then the memory bus. Then I get to start the fun process of debugging this monstrosity. Also new is nall/inline-if.hpp. Note that this file is technically a war crime, so be careful when opening it. This replaces ternary() from the previous WIP.
46 lines
1.1 KiB
C++
46 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include <type_traits>
|
|
#include <nall/stdint.hpp>
|
|
|
|
//pull all type traits used by nall from std namespace into nall namespace
|
|
//this removes the requirement to prefix type traits with std:: within nall
|
|
|
|
namespace nall {
|
|
using std::add_const;
|
|
using std::conditional;
|
|
using std::decay;
|
|
using std::declval;
|
|
using std::enable_if;
|
|
using std::enable_if_t;
|
|
using std::false_type;
|
|
using std::is_floating_point;
|
|
using std::is_floating_point_v;
|
|
using std::forward;
|
|
using std::initializer_list;
|
|
using std::is_array;
|
|
using std::is_base_of;
|
|
using std::is_function;
|
|
using std::is_integral;
|
|
using std::is_integral_v;
|
|
using std::is_same;
|
|
using std::is_same_v;
|
|
using std::is_signed;
|
|
using std::is_signed_v;
|
|
using std::is_unsigned;
|
|
using std::is_unsigned_v;
|
|
using std::move;
|
|
using std::nullptr_t;
|
|
using std::remove_extent;
|
|
using std::remove_reference;
|
|
using std::swap;
|
|
using std::true_type;
|
|
}
|
|
|
|
namespace std {
|
|
#if INTMAX_BITS >= 128
|
|
template<> struct is_signed<int128_t> : true_type {};
|
|
template<> struct is_unsigned<uint128_t> : true_type {};
|
|
#endif
|
|
}
|