Minh Nguyen / ArduinoJson
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers is_signed.hpp Source File

is_signed.hpp

00001 // ArduinoJson - arduinojson.org
00002 // Copyright Benoit Blanchon 2014-2021
00003 // MIT License
00004 
00005 #pragma once
00006 
00007 #include "integral_constant.hpp"
00008 namespace ARDUINOJSON_NAMESPACE {
00009 
00010 template <typename>
00011 struct is_signed : false_type {};
00012 
00013 template <>
00014 struct is_signed<char> : true_type {};
00015 
00016 template <>
00017 struct is_signed<signed char> : true_type {};
00018 
00019 template <>
00020 struct is_signed<signed short> : true_type {};
00021 
00022 template <>
00023 struct is_signed<signed int> : true_type {};
00024 
00025 template <>
00026 struct is_signed<signed long> : true_type {};
00027 
00028 template <>
00029 struct is_signed<float> : true_type {};
00030 
00031 template <>
00032 struct is_signed<double> : true_type {};
00033 
00034 #if ARDUINOJSON_HAS_LONG_LONG
00035 template <>
00036 struct is_signed<signed long long> : true_type {};
00037 #endif
00038 
00039 #if ARDUINOJSON_HAS_INT64
00040 template <>
00041 struct is_signed<signed __int64> : true_type {};
00042 #endif
00043 }  // namespace ARDUINOJSON_NAMESPACE