/* Copyright 2015, Michele Santullo
 * This file is part of DoorKeeper.
 *
 * DoorKeeper is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * DoorKeeper is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with DoorKeeper.  If not, see <http://www.gnu.org/licenses/>.
 */

#ifndef id8138A90B1FE448908902F69738CF6C4C
#define id8138A90B1FE448908902F69738CF6C4C

#include <cstdint>
#include "doorkeeper/helpers/typename.hpp"

namespace dk {
#if defined(USE_MANUAL_TYPENAMES)
	template<> constexpr const char* manual_type_name<bool>() a_pure;
	template<> constexpr const char* manual_type_name<float>() a_pure;
	template<> constexpr const char* manual_type_name<double>() a_pure;
	template<> constexpr const char* manual_type_name<long double>() a_pure;
	template<> constexpr const char* manual_type_name<uint8_t>() a_pure;
	template<> constexpr const char* manual_type_name<uint16_t>() a_pure;
	template<> constexpr const char* manual_type_name<uint32_t>() a_pure;
	template<> constexpr const char* manual_type_name<uint64_t>() a_pure;
	template<> constexpr const char* manual_type_name<int8_t>() a_pure;
	template<> constexpr const char* manual_type_name<int16_t>() a_pure;
	template<> constexpr const char* manual_type_name<int32_t>() a_pure;
	template<> constexpr const char* manual_type_name<int64_t>() a_pure;
	template<> constexpr const char* manual_type_name<wchar_t>() a_pure;
	template<> constexpr const char* manual_type_name<char16_t>() a_pure;
	template<> constexpr const char* manual_type_name<char32_t>() a_pure;
#endif
} //namespace dk

#if defined(USE_MANUAL_TYPENAMES)
#	include "doorkeeper/implem/typename_native.inl"
#endif

#endif
