stabilize build system: depends, installer, boost/bdb fixes, cross targets groundwork
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_DIGIT_TO_INT_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_DIGIT_TO_INT_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2009 - 2010.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/util/digit_to_int_c.hpp>
|
||||
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class D = boost::mpl::na>
|
||||
struct digit_to_int : digit_to_int_c<D::type::value> {};
|
||||
|
||||
template <>
|
||||
struct digit_to_int<boost::mpl::na>
|
||||
{
|
||||
typedef digit_to_int type;
|
||||
|
||||
template <class D = boost::mpl::na>
|
||||
struct apply : digit_to_int<D> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_DIGIT_TO_INT_C_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_DIGIT_TO_INT_C_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2013.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/error/digit_expected.hpp>
|
||||
|
||||
#include <boost/mpl/int.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <char C>
|
||||
struct digit_to_int_c : error::digit_expected {};
|
||||
|
||||
template <> struct digit_to_int_c<'0'> : boost::mpl::int_<0> {};
|
||||
template <> struct digit_to_int_c<'1'> : boost::mpl::int_<1> {};
|
||||
template <> struct digit_to_int_c<'2'> : boost::mpl::int_<2> {};
|
||||
template <> struct digit_to_int_c<'3'> : boost::mpl::int_<3> {};
|
||||
template <> struct digit_to_int_c<'4'> : boost::mpl::int_<4> {};
|
||||
template <> struct digit_to_int_c<'5'> : boost::mpl::int_<5> {};
|
||||
template <> struct digit_to_int_c<'6'> : boost::mpl::int_<6> {};
|
||||
template <> struct digit_to_int_c<'7'> : boost::mpl::int_<7> {};
|
||||
template <> struct digit_to_int_c<'8'> : boost::mpl::int_<8> {};
|
||||
template <> struct digit_to_int_c<'9'> : boost::mpl::int_<9> {};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IN_RANGE_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IN_RANGE_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2009 - 2010.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/mpl/less_equal.hpp>
|
||||
#include <boost/mpl/comparison.hpp>
|
||||
#include <boost/mpl/quote.hpp>
|
||||
#include <boost/mpl/bool.hpp>
|
||||
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <
|
||||
class LowerBound = boost::mpl::na,
|
||||
class UpperBound = boost::mpl::na,
|
||||
class Item = boost::mpl::na
|
||||
>
|
||||
struct in_range :
|
||||
boost::mpl::bool_<
|
||||
boost::mpl::less_equal<LowerBound, Item>::type::value
|
||||
&& boost::mpl::less_equal<Item, UpperBound>::type::value
|
||||
>
|
||||
{};
|
||||
|
||||
template <class LowerBound, class UpperBound>
|
||||
struct in_range<LowerBound, UpperBound, boost::mpl::na>
|
||||
{
|
||||
typedef in_range type;
|
||||
|
||||
template <class Item = boost::mpl::na>
|
||||
struct apply : in_range<LowerBound, UpperBound, Item> {};
|
||||
};
|
||||
|
||||
template <class LowerBound>
|
||||
struct in_range<LowerBound, boost::mpl::na, boost::mpl::na>
|
||||
{
|
||||
typedef in_range type;
|
||||
|
||||
template <
|
||||
class UpperBound = boost::mpl::na,
|
||||
class Item = boost::mpl::na
|
||||
>
|
||||
struct apply : in_range<LowerBound, UpperBound, Item> {};
|
||||
};
|
||||
|
||||
template <>
|
||||
struct in_range<boost::mpl::na, boost::mpl::na, boost::mpl::na>
|
||||
{
|
||||
typedef in_range type;
|
||||
|
||||
template <
|
||||
class LowerBound = boost::mpl::na,
|
||||
class UpperBound = boost::mpl::na,
|
||||
class Item = boost::mpl::na
|
||||
>
|
||||
struct apply : in_range<LowerBound, UpperBound, Item> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IN_RANGE_C_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IN_RANGE_C_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2014.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/mpl/bool.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class T, T LowerBound, T UpperBound>
|
||||
struct in_range_c
|
||||
{
|
||||
typedef in_range_c type;
|
||||
|
||||
template <class Item>
|
||||
struct apply :
|
||||
boost::mpl::bool_<(
|
||||
LowerBound <= Item::type::value
|
||||
&& Item::type::value <= UpperBound
|
||||
)>
|
||||
{};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_INT_TO_DIGIT_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_INT_TO_DIGIT_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2012.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/util/int_to_digit_c.hpp>
|
||||
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class N = boost::mpl::na>
|
||||
struct int_to_digit : int_to_digit_c<N::type::value> {};
|
||||
|
||||
template <>
|
||||
struct int_to_digit<boost::mpl::na>
|
||||
{
|
||||
typedef int_to_digit type;
|
||||
|
||||
template <class N = boost::mpl::na>
|
||||
struct apply : int_to_digit<N> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_INT_TO_DIGIT_C_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_INT_TO_DIGIT_C_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2013.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/mpl/char.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <int N>
|
||||
struct int_to_digit_c;
|
||||
|
||||
template <> struct int_to_digit_c<0> : boost::mpl::char_<'0'> {};
|
||||
template <> struct int_to_digit_c<1> : boost::mpl::char_<'1'> {};
|
||||
template <> struct int_to_digit_c<2> : boost::mpl::char_<'2'> {};
|
||||
template <> struct int_to_digit_c<3> : boost::mpl::char_<'3'> {};
|
||||
template <> struct int_to_digit_c<4> : boost::mpl::char_<'4'> {};
|
||||
template <> struct int_to_digit_c<5> : boost::mpl::char_<'5'> {};
|
||||
template <> struct int_to_digit_c<6> : boost::mpl::char_<'6'> {};
|
||||
template <> struct int_to_digit_c<7> : boost::mpl::char_<'7'> {};
|
||||
template <> struct int_to_digit_c<8> : boost::mpl::char_<'8'> {};
|
||||
template <> struct int_to_digit_c<9> : boost::mpl::char_<'9'> {};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IS_DIGIT_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IS_DIGIT_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2009 - 2010.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/util/in_range_c.hpp>
|
||||
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class C = boost::mpl::na>
|
||||
struct is_digit : in_range_c<char, '0', '9'>::apply<C> {};
|
||||
|
||||
template <>
|
||||
struct is_digit<boost::mpl::na>
|
||||
{
|
||||
typedef is_digit type;
|
||||
|
||||
template <class C = boost::mpl::na>
|
||||
struct apply : is_digit<C> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IS_LCASE_LETTER_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IS_LCASE_LETTER_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2009 - 2010.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/util/in_range_c.hpp>
|
||||
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class C = boost::mpl::na>
|
||||
struct is_lcase_letter : in_range_c<char, 'a', 'z'>::apply<C> {};
|
||||
|
||||
template <>
|
||||
struct is_lcase_letter<boost::mpl::na>
|
||||
{
|
||||
typedef is_lcase_letter type;
|
||||
|
||||
template <class C = boost::mpl::na>
|
||||
struct apply : is_lcase_letter<C> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IS_LETTER_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IS_LETTER_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2009 - 2010.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/util/is_ucase_letter.hpp>
|
||||
#include <boost/metaparse/v1/util/is_lcase_letter.hpp>
|
||||
|
||||
#include <boost/mpl/bool.hpp>
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class C = boost::mpl::na>
|
||||
struct is_letter :
|
||||
boost::mpl::bool_<
|
||||
is_lcase_letter<C>::type::value || is_ucase_letter<C>::type::value
|
||||
>
|
||||
{};
|
||||
|
||||
template <>
|
||||
struct is_letter<boost::mpl::na>
|
||||
{
|
||||
typedef is_letter type;
|
||||
|
||||
template <class C = boost::mpl::na>
|
||||
struct apply : is_letter<C> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IS_UCASE_LETTER_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IS_UCASE_LETTER_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2009 - 2010.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/util/in_range_c.hpp>
|
||||
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class C = boost::mpl::na>
|
||||
struct is_ucase_letter : in_range_c<char, 'A', 'Z'>::apply<C> {};
|
||||
|
||||
template <>
|
||||
struct is_ucase_letter<boost::mpl::na>
|
||||
{
|
||||
typedef is_ucase_letter type;
|
||||
|
||||
template <class C = boost::mpl::na>
|
||||
struct apply : is_ucase_letter<C> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IS_WHITESPACE_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IS_WHITESPACE_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2009 - 2010.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/metaparse/v1/util/is_whitespace_c.hpp>
|
||||
|
||||
#include <boost/mpl/vector.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <class C = boost::mpl::na>
|
||||
struct is_whitespace : is_whitespace_c<C::type::value> {};
|
||||
|
||||
template <>
|
||||
struct is_whitespace<boost::mpl::na>
|
||||
{
|
||||
typedef is_whitespace type;
|
||||
|
||||
template <class C = boost::mpl::na>
|
||||
struct apply : is_whitespace<C> {};
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
#ifndef BOOST_METAPARSE_V1_UTIL_IS_WHITESPACE_C_HPP
|
||||
#define BOOST_METAPARSE_V1_UTIL_IS_WHITESPACE_C_HPP
|
||||
|
||||
// Copyright Abel Sinkovics (abel@sinkovics.hu) 2013.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/mpl/bool.hpp>
|
||||
|
||||
namespace boost
|
||||
{
|
||||
namespace metaparse
|
||||
{
|
||||
namespace v1
|
||||
{
|
||||
namespace util
|
||||
{
|
||||
template <char C>
|
||||
struct is_whitespace_c : boost::mpl::false_ {};
|
||||
|
||||
template <> struct is_whitespace_c<' '> : boost::mpl::true_ {};
|
||||
template <> struct is_whitespace_c<'\r'> : boost::mpl::true_ {};
|
||||
template <> struct is_whitespace_c<'\n'> : boost::mpl::true_ {};
|
||||
template <> struct is_whitespace_c<'\t'> : boost::mpl::true_ {};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user