亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? typetraits.hpp

?? 國外魔獸世界-NOPserver源碼,2004年版
?? HPP
字號:
// Copyright (c) 2003 Daniel Wallin and Arvid Norberg

// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the "Software"),
// to deal in the Software without restriction, including without limitation
// the rights to use, copy, modify, merge, publish, distribute, sublicense,
// and/or sell copies of the Software, and to permit persons to whom the
// Software is furnished to do so, subject to the following conditions:

// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.

// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
// ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
// TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
// PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
// SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
// ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
// OR OTHER DEALINGS IN THE SOFTWARE.


#ifndef LUABIND_TYPETRAITS_HPP_INCLUDED
#define LUABIND_TYPETRAITS_HPP_INCLUDED

#include <luabind/config.hpp>
#include <boost/mpl/if.hpp>
#include <boost/type_traits/is_reference.hpp>
#include <boost/type_traits/is_const.hpp>
#include <luabind/detail/primitives.hpp>

namespace luabind { namespace detail 
{

#ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION

	template<class T>
	struct is_const_type
	{
		typedef typename boost::mpl::if_<boost::is_const<T>
			, yes_t
			, no_t
		>::type type;
	};

	template<bool is_Reference = false>
	struct is_const_reference_helper
	{
		template<class>
		struct apply
		{
			enum
			{
				value = false
			};
		};
	};

	template<class T>
	typename is_const_type<T>::type is_const_reference_tester(T&);
	no_t is_const_reference_tester(...);

	template<>
	struct is_const_reference_helper<true>
	{
		template<class T>
		struct apply
		{
			static T getT();

			enum
			{
				value = sizeof(is_const_reference_tester(getT())) == sizeof(yes_t)
			};
		};
	};

	template<class T>
	struct is_const_reference
		: is_const_reference_helper<boost::is_reference<T>::value>::template apply<T>
	{
		typedef boost::mpl::bool_<value> type;
	};

#else

	template<class T>
	struct is_const_reference
	{
		enum { value = false };
		typedef boost::mpl::bool_<value> type;
	};

	template<class T>
	struct is_const_reference<const T&>
	{
		enum { value = true };
		typedef boost::mpl::bool_<value> type;
	};

#endif


	template<class T>
	struct is_nonconst_reference
	{
		enum
		{
			value = boost::is_reference<T>::value && !is_const_reference<T>::value
		};
		typedef boost::mpl::bool_<value> type;
	};

	template<class A>
	yes_t is_const_pointer_helper(void(*)(const A*));
	no_t is_const_pointer_helper(...);

	template<class T>
	struct is_const_pointer
	{
		enum { value = sizeof(is_const_pointer_helper((void(*)(T))0)) == sizeof(yes_t) };
		typedef boost::mpl::bool_<value> type;
	};

	template<class A>
	yes_t is_nonconst_pointer_helper(void(*)(A*));
	no_t is_nonconst_pointer_helper(...);

	template<class T>
	struct is_nonconst_pointer
	{
		enum { value = sizeof(is_nonconst_pointer_helper((void(*)(T))0)) == sizeof(yes_t) && !is_const_pointer<T>::value };
		typedef boost::mpl::bool_<value> type;
	};
/*
	template<class T>
	struct is_constructable_from_helper
	{
		static yes_t check(const T&);
		static no_t check(...);
	};

	template<class T, class From>
	struct is_constructable_from
	{
		static From getFrom();

		enum
		{
			value = sizeof(is_constructable_from_helper<T>::check(getFrom())) == sizeof(yes_t)
		};
	};

	template<class T>
	struct is_const_member_function_helper
	{
		static no_t test(...);
		template<class R>
		static yes_t test(R(T::*)() const);
		template<class R, class A1>
		static yes_t test(R(T::*)(A1) const);
		template<class R, class A1, class A2>
		static yes_t test(R(T::*)(A1,A2) const);
		template<class R, class A1, class A2, class A3>
		static yes_t test(R(T::*)(A1,A2,A3) const);
	};

	template<class T, class U>
	struct is_const_member_function
	{
		static U getU();

		enum
		{
			value = sizeof(is_const_member_function_helper<T>::test(getU())) == sizeof(yes_t)
		};
	};
*/

	template<int v1, int v2>
	struct max
	{
		enum { value = (v1>v2)?v1:v2 };
	};

}}

#endif // LUABIND_TYPETRAITS_HPP_INCLUDED

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产91洋老外米糕| 狠狠色丁香婷婷综合| 精品国产精品网麻豆系列 | 国产激情视频一区二区三区欧美| 亚洲国产综合在线| 国产精品毛片久久久久久| 日韩三区在线观看| 国产女同性恋一区二区| 久久久影视传媒| 国产精品色噜噜| 激情另类小说区图片区视频区| 欧美日韩国产一区二区三区地区| 色综合天天综合狠狠| 国产91精品入口| 粉嫩一区二区三区在线看| 久久免费美女视频| a级精品国产片在线观看| 色婷婷香蕉在线一区二区| 在线播放91灌醉迷j高跟美女 | 久久精品国产精品亚洲精品| 精品亚洲成a人在线观看| 色婷婷综合久久| 亚洲精品v日韩精品| 亚洲va天堂va国产va久| 国产一区二区中文字幕| 在线观看av不卡| 久久久久国产精品麻豆| 91色porny蝌蚪| 久久网站热最新地址| 亚洲一二三区视频在线观看| 精品国产一区二区三区忘忧草| 成人小视频在线| www国产精品av| 色综合久久久久综合| 男人的j进女人的j一区| av一二三不卡影片| 日韩1区2区日韩1区2区| 欧美调教femdomvk| 最好看的中文字幕久久| www.欧美色图| 久久99热99| 夜夜精品视频一区二区| 欧美一a一片一级一片| 国模一区二区三区白浆| 一级日本不卡的影视| 久久久噜噜噜久噜久久综合| 欧洲一区二区三区在线| 成人黄色免费短视频| 亚洲欧洲成人自拍| 91丨porny丨蝌蚪视频| 成人免费电影视频| 国产精品一品二品| 18成人在线观看| 久久久欧美精品sm网站| 337p粉嫩大胆噜噜噜噜噜91av| 欧美日韩激情一区二区三区| 色网站国产精品| 91久久免费观看| 日韩中文字幕亚洲一区二区va在线| 欧美四级电影网| 欧美日韩国产精选| 欧美一区二区三区四区在线观看 | 色噜噜狠狠色综合中国| 91性感美女视频| 欧美日本免费一区二区三区| 欧美日韩一区二区电影| 久久精品国产77777蜜臀| 国产一区二区在线影院| 国产精品一区在线| 99久久婷婷国产精品综合| 日韩黄色片在线观看| 日本中文字幕不卡| 成人激情免费视频| 欧美手机在线视频| 欧美不卡在线视频| 成人视屏免费看| 日本韩国精品在线| 91精品国产入口在线| 久久久国产精华| 亚洲精品久久7777| 国产一区亚洲一区| 色综合激情五月| 日韩欧美视频一区| 5566中文字幕一区二区电影| 久久久综合网站| 亚洲制服丝袜av| 久久综合狠狠综合久久激情| 欧美精品久久久久久久多人混战| 日韩美女视频在线| 一区二区三区四区乱视频| 国产乱人伦偷精品视频不卡| 欧美老女人第四色| 亚洲精品中文在线影院| 成人app网站| 国产亚洲欧美日韩在线一区| 91精品欧美久久久久久动漫| 一区二区三区在线影院| 成人亚洲精品久久久久软件| 久久久久国产成人精品亚洲午夜 | 亚洲综合区在线| 色8久久精品久久久久久蜜| 亚洲国产精品自拍| 99视频精品全部免费在线| 欧美浪妇xxxx高跟鞋交| 久久综合国产精品| 丝袜美腿亚洲综合| 日韩一区二区在线观看视频 | 国产欧美一区二区三区鸳鸯浴| 久久成人久久爱| 精品国产一区久久| 亚洲一区免费观看| 欧美性受xxxx| 日本免费在线视频不卡一不卡二| 欧美一区在线视频| 成人免费看片app下载| 亚洲免费在线视频| 欧美久久免费观看| 国产精品一区二区91| 亚洲一区在线观看视频| 这里只有精品电影| 国模少妇一区二区三区| 国产精品久久久久影院| 久久国产精品99久久久久久老狼| 中文字幕一区二区三区视频| 欧美在线|欧美| 成人天堂资源www在线| 亚洲国产婷婷综合在线精品| 久久久久国产精品人| 91福利国产成人精品照片| 亚洲成人免费观看| 日韩欧美的一区| 色婷婷av一区| 粉嫩av一区二区三区在线播放| 亚洲成人自拍网| 亚洲美女少妇撒尿| 国产精品三级电影| 精品久久久久香蕉网| 欧美日韩免费观看一区三区| 成人激情电影免费在线观看| 国内精品第一页| 精品一区二区三区在线播放| 亚洲一区二区三区小说| 日韩理论片网站| 亚洲一区欧美一区| |精品福利一区二区三区| 久久免费的精品国产v∧| 日韩欧美国产一二三区| 日韩天堂在线观看| 精品国产乱码久久久久久图片| 欧美一区二区网站| 日韩三级免费观看| 久久精品日韩一区二区三区| 欧美成人精品福利| 欧美成人精精品一区二区频| 精品国产乱码久久久久久牛牛| 久久久久久亚洲综合| 国产亚洲人成网站| 亚洲欧洲精品一区二区三区不卡| 综合电影一区二区三区| 日欧美一区二区| 国产精品一区二区久激情瑜伽 | 亚洲成人午夜电影| 美日韩一区二区三区| 国产精品亚洲а∨天堂免在线| 国产精品亚洲午夜一区二区三区| gogogo免费视频观看亚洲一| 在线观看亚洲a| 91精品国产综合久久久久| 欧美mv日韩mv国产网站| 国产精品成人一区二区艾草| 亚州成人在线电影| 国产成人av一区二区三区在线| 色综合久久综合中文综合网| 欧美少妇一区二区| 91精品婷婷国产综合久久竹菊| 国产精品嫩草影院av蜜臀| 亚洲精品成人少妇| 久久精品国产秦先生| av亚洲精华国产精华精| 日韩亚洲国产中文字幕欧美| 一级做a爱片久久| 国产精品综合视频| 91麻豆精品91久久久久同性| 国产日韩欧美一区二区三区乱码| 五月激情综合婷婷| 不卡在线观看av| 日韩欧美亚洲国产精品字幕久久久| 中文字幕电影一区| 91精品国产一区二区三区香蕉| 中文av一区二区| 岛国精品一区二区| 国产日韩av一区| 国产麻豆9l精品三级站| 91麻豆精品国产自产在线观看一区| 一区二区三区免费| 一本大道久久a久久综合| 国产精品久久久久久久久久久免费看 | 午夜精品福利一区二区蜜股av| 在线精品视频免费播放| 亚洲一区二区三区视频在线|