diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-10-31 19:13:18 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-10-31 19:13:18 +0000 |
commit | 329b6095ddda830433e6000b943fab82d1c83cf1 (patch) | |
tree | 605301a07119dea4433c994f9000743eed20d165 /misc/uClibc++/include/cxx/type_traits | |
parent | 8f6e28f194274bde92d11c6383167ddbcc496cb3 (diff) | |
download | nuttx-329b6095ddda830433e6000b943fab82d1c83cf1.tar.gz nuttx-329b6095ddda830433e6000b943fab82d1c83cf1.tar.bz2 nuttx-329b6095ddda830433e6000b943fab82d1c83cf1.zip |
Add misc/uClibc++ and build hooks in nuttx/
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5283 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'misc/uClibc++/include/cxx/type_traits')
-rw-r--r-- | misc/uClibc++/include/cxx/type_traits | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/misc/uClibc++/include/cxx/type_traits b/misc/uClibc++/include/cxx/type_traits new file mode 100644 index 000000000..fa1de40ce --- /dev/null +++ b/misc/uClibc++/include/cxx/type_traits @@ -0,0 +1,92 @@ +/* Copyright (C) 2005 Garrett A. Kajmowicz + + This file is part of the uClibc++ Library. + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +#include <basic_definitions> +#include <string.h> +#include <exception> +#include <memory> +#include <char_traits> + +#ifndef __HEADER_TYPE_TRAITS +#define __HEADER_TYPE_TRAITS 1 + +#pragma GCC visibility push(default) + +namespace std{ + + struct _UCXXEXPORT __true_type{}; + struct _UCXXEXPORT __false_type{}; + + template <class I> class _UCXXEXPORT __is_integer{ + public: + typedef __false_type value; + }; + + template <> class _UCXXEXPORT __is_integer <unsigned int>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <signed int>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <short unsigned int>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <short signed int>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <char>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <signed char>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <unsigned char>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <long unsigned int>{ + public: + typedef __true_type value; + }; + + template <> class _UCXXEXPORT __is_integer <long signed int>{ + public: + typedef __true_type value; + }; + + + +} + +#pragma GCC visibility pop + +#endif + |