├── rebar ├── .gitignore ├── Makefile ├── src └── basho_metrics.app.src ├── c_src ├── boost │ └── boost │ │ ├── concept │ │ ├── detail │ │ │ ├── concept_undef.hpp │ │ │ ├── backward_compatibility.hpp │ │ │ └── has_constraints.hpp │ │ ├── usage.hpp │ │ └── assert.hpp │ │ ├── type.hpp │ │ ├── exception │ │ └── detail │ │ │ └── attribute_noreturn.hpp │ │ ├── mpl │ │ ├── next.hpp │ │ ├── aux_ │ │ │ ├── config │ │ │ │ ├── msvc.hpp │ │ │ │ ├── workaround.hpp │ │ │ │ ├── intel.hpp │ │ │ │ ├── use_preprocessed.hpp │ │ │ │ ├── gcc.hpp │ │ │ │ ├── static_constant.hpp │ │ │ │ ├── msvc_typename.hpp │ │ │ │ ├── pp_counter.hpp │ │ │ │ ├── bcc.hpp │ │ │ │ ├── ctps.hpp │ │ │ │ ├── arrays.hpp │ │ │ │ ├── overload_resolution.hpp │ │ │ │ ├── bind.hpp │ │ │ │ ├── has_apply.hpp │ │ │ │ ├── lambda.hpp │ │ │ │ ├── has_xxx.hpp │ │ │ │ ├── nttp.hpp │ │ │ │ ├── integral.hpp │ │ │ │ ├── preprocessor.hpp │ │ │ │ ├── ttp.hpp │ │ │ │ ├── eti.hpp │ │ │ │ ├── adl.hpp │ │ │ │ └── dtp.hpp │ │ │ ├── has_type.hpp │ │ │ ├── template_arity_fwd.hpp │ │ │ ├── na_fwd.hpp │ │ │ ├── lambda_arity_param.hpp │ │ │ ├── static_cast.hpp │ │ │ ├── has_apply.hpp │ │ │ ├── msvc_never_true.hpp │ │ │ ├── arg_typedef.hpp │ │ │ ├── nttp_decl.hpp │ │ │ ├── common_name_wknd.hpp │ │ │ ├── na_assert.hpp │ │ │ ├── preprocessed │ │ │ │ └── gcc │ │ │ │ │ ├── bind_fwd.hpp │ │ │ │ │ ├── apply_fwd.hpp │ │ │ │ │ ├── and.hpp │ │ │ │ │ ├── or.hpp │ │ │ │ │ └── apply_wrap.hpp │ │ │ ├── arity.hpp │ │ │ ├── type_wrapper.hpp │ │ │ ├── yes_no.hpp │ │ │ ├── nested_type_wknd.hpp │ │ │ ├── include_preprocessed.hpp │ │ │ ├── adl_barrier.hpp │ │ │ └── preprocessor │ │ │ │ └── enum.hpp │ │ ├── int.hpp │ │ ├── limits │ │ │ └── arity.hpp │ │ ├── void_fwd.hpp │ │ ├── int_fwd.hpp │ │ ├── arg_fwd.hpp │ │ ├── integral_c_tag.hpp │ │ ├── lambda.hpp │ │ ├── bool_fwd.hpp │ │ ├── always.hpp │ │ ├── integral_c_fwd.hpp │ │ ├── bool.hpp │ │ ├── identity.hpp │ │ ├── not.hpp │ │ ├── next_prior.hpp │ │ ├── lambda_fwd.hpp │ │ ├── protect.hpp │ │ ├── integral_c.hpp │ │ ├── and.hpp │ │ ├── or.hpp │ │ └── void.hpp │ │ ├── preprocessor │ │ ├── facilities │ │ │ ├── empty.hpp │ │ │ └── identity.hpp │ │ ├── punctuation │ │ │ ├── comma.hpp │ │ │ └── comma_if.hpp │ │ ├── inc.hpp │ │ ├── empty.hpp │ │ ├── repeat.hpp │ │ ├── comma_if.hpp │ │ ├── identity.hpp │ │ ├── logical │ │ │ ├── not.hpp │ │ │ ├── and.hpp │ │ │ ├── compl.hpp │ │ │ └── bitand.hpp │ │ ├── control │ │ │ ├── deduce_d.hpp │ │ │ ├── if.hpp │ │ │ ├── expr_iif.hpp │ │ │ └── iif.hpp │ │ ├── cat.hpp │ │ ├── stringize.hpp │ │ ├── array │ │ │ ├── data.hpp │ │ │ ├── size.hpp │ │ │ └── elem.hpp │ │ ├── detail │ │ │ └── is_binary.hpp │ │ ├── arithmetic │ │ │ ├── mod.hpp │ │ │ └── sub.hpp │ │ ├── comparison │ │ │ └── less_equal.hpp │ │ ├── list │ │ │ ├── fold_right.hpp │ │ │ └── reverse.hpp │ │ ├── debug │ │ │ └── error.hpp │ │ ├── repetition │ │ │ ├── enum_params.hpp │ │ │ └── enum_trailing_params.hpp │ │ └── seq │ │ │ └── seq.hpp │ │ ├── random │ │ └── detail │ │ │ ├── enable_warnings.hpp │ │ │ ├── config.hpp │ │ │ ├── disable_warnings.hpp │ │ │ ├── generator_bits.hpp │ │ │ └── generator_seed_seq.hpp │ │ ├── type_traits │ │ ├── detail │ │ │ ├── wrap.hpp │ │ │ ├── type_trait_undef.hpp │ │ │ ├── yes_no_type.hpp │ │ │ ├── false_result.hpp │ │ │ ├── ice_not.hpp │ │ │ ├── bool_trait_undef.hpp │ │ │ ├── template_arity_spec.hpp │ │ │ ├── ice_eq.hpp │ │ │ ├── ice_or.hpp │ │ │ ├── ice_and.hpp │ │ │ └── type_trait_def.hpp │ │ ├── conversion_traits.hpp │ │ ├── ice.hpp │ │ ├── is_rvalue_reference.hpp │ │ ├── is_float.hpp │ │ ├── is_void.hpp │ │ ├── is_reference.hpp │ │ ├── msvc │ │ │ ├── typeof.hpp │ │ │ ├── remove_bounds.hpp │ │ │ └── remove_reference.hpp │ │ ├── integral_constant.hpp │ │ ├── add_const.hpp │ │ ├── add_volatile.hpp │ │ ├── is_arithmetic.hpp │ │ ├── is_stateless.hpp │ │ ├── has_trivial_constructor.hpp │ │ ├── is_union.hpp │ │ ├── has_trivial_destructor.hpp │ │ └── add_pointer.hpp │ │ ├── config │ │ ├── abi_prefix.hpp │ │ ├── abi_suffix.hpp │ │ ├── compiler │ │ │ ├── sgi_mipspro.hpp │ │ │ ├── kai.hpp │ │ │ ├── comeau.hpp │ │ │ └── gcc_xml.hpp │ │ ├── no_tr1 │ │ │ ├── cmath.hpp │ │ │ ├── memory.hpp │ │ │ ├── complex.hpp │ │ │ ├── utility.hpp │ │ │ └── functional.hpp │ │ ├── platform │ │ │ ├── vxworks.hpp │ │ │ ├── aix.hpp │ │ │ └── cygwin.hpp │ │ └── stdlib │ │ │ └── libcpp.hpp │ │ ├── utility.hpp │ │ ├── iterator │ │ ├── detail │ │ │ └── config_undef.hpp │ │ └── interoperable.hpp │ │ ├── call_traits.hpp │ │ ├── implicit_cast.hpp │ │ ├── noncopyable.hpp │ │ ├── version.hpp │ │ ├── circular_buffer_fwd.hpp │ │ ├── next_prior.hpp │ │ ├── current_function.hpp │ │ └── checked_delete.hpp └── basho_metrics_nifs.h ├── rebar.config └── README.org /rebar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basho/basho_metrics/HEAD/rebar -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.eunit/* 2 | /deps/* 3 | /priv/* 4 | *.o 5 | *.beam 6 | ebin 7 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: compile 3 | 4 | compile: 5 | ./rebar compile 6 | 7 | test: compile 8 | ./rebar eunit 9 | 10 | clean: 11 | ./rebar clean 12 | -------------------------------------------------------------------------------- /src/basho_metrics.app.src: -------------------------------------------------------------------------------- 1 | {application, basho_metrics, 2 | [ 3 | {description, ""}, 4 | {vsn, "1.0.0"}, 5 | {registered, []}, 6 | {applications, [ 7 | kernel, 8 | stdlib 9 | ]}, 10 | {env, []} 11 | ]}. 12 | -------------------------------------------------------------------------------- /c_src/boost/boost/concept/detail/concept_undef.hpp: -------------------------------------------------------------------------------- 1 | // Copyright David Abrahams 2006. Distributed under the Boost 2 | // Software License, Version 1.0. (See accompanying 3 | // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 4 | # undef BOOST_concept_typename 5 | # undef BOOST_concept 6 | -------------------------------------------------------------------------------- /rebar.config: -------------------------------------------------------------------------------- 1 | {port_specs, [{"priv/basho_metrics_nifs.so", ["c_src/*.cpp"]}]}. 2 | 3 | {port_env, [ 4 | {"CFLAGS", "$CFLAGS -fPIC"}, 5 | {"DRV_CFLAGS", "$DRV_CFLAGS -Ic_src/boost -Ic_src/boost.atomic"}, 6 | {"DRV_LDFLAGS", "$DRV_LDFLAGS -lstdc++"} 7 | ]}. 8 | 9 | {erl_opts, []}. 10 | -------------------------------------------------------------------------------- /c_src/boost/boost/type.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright David Abrahams 2001. 2 | // Distributed under the Boost Software License, Version 1.0. (See 3 | // accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | #ifndef BOOST_TYPE_DWA20010120_HPP 7 | # define BOOST_TYPE_DWA20010120_HPP 8 | 9 | namespace boost { 10 | 11 | // Just a simple "type envelope". Useful in various contexts, mostly to work 12 | // around some MSVC deficiencies. 13 | template 14 | struct type {}; 15 | 16 | } 17 | 18 | #endif // BOOST_TYPE_DWA20010120_HPP 19 | -------------------------------------------------------------------------------- /c_src/boost/boost/exception/detail/attribute_noreturn.hpp: -------------------------------------------------------------------------------- 1 | //Copyright (c) 2009 Emil Dotchevski and Reverge Studios, Inc. 2 | 3 | //Distributed under the Boost Software License, Version 1.0. (See accompanying 4 | //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | #ifndef UUID_61531AB0680611DEADD5846855D89593 7 | #define UUID_61531AB0680611DEADD5846855D89593 8 | 9 | #if defined(_MSC_VER) 10 | #define BOOST_ATTRIBUTE_NORETURN __declspec(noreturn) 11 | #elif defined(__GNUC__) 12 | #define BOOST_ATTRIBUTE_NORETURN __attribute__((noreturn)) 13 | #else 14 | #define BOOST_ATTRIBUTE_NORETURN 15 | #endif 16 | 17 | #endif 18 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/next.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_NEXT_HPP_INCLUDED 3 | #define BOOST_MPL_NEXT_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: next.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #endif // BOOST_MPL_NEXT_HPP_INCLUDED 20 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/facilities/empty.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_FACILITIES_EMPTY_HPP 15 | # define BOOST_PREPROCESSOR_FACILITIES_EMPTY_HPP 16 | # 17 | # /* BOOST_PP_EMPTY */ 18 | # 19 | # define BOOST_PP_EMPTY() 20 | # 21 | # endif 22 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/punctuation/comma.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_PUNCTUATION_COMMA_HPP 15 | # define BOOST_PREPROCESSOR_PUNCTUATION_COMMA_HPP 16 | # 17 | # /* BOOST_PP_COMMA */ 18 | # 19 | # define BOOST_PP_COMMA() , 20 | # 21 | # endif 22 | -------------------------------------------------------------------------------- /c_src/boost/boost/random/detail/enable_warnings.hpp: -------------------------------------------------------------------------------- 1 | /* boost random/detail/enable_warnings.hpp header file 2 | * 3 | * Copyright Steven Watanabe 2009 4 | * Distributed under the Boost Software License, Version 1.0. (See 5 | * accompanying file LICENSE_1_0.txt or copy at 6 | * http://www.boost.org/LICENSE_1_0.txt) 7 | * 8 | * See http://www.boost.org for most recent version including documentation. 9 | * 10 | * $Id: enable_warnings.hpp 58649 2010-01-02 21:23:17Z steven_watanabe $ 11 | * 12 | */ 13 | 14 | // No #include guard. This header is intended to be included multiple times. 15 | 16 | #ifdef BOOST_MSVC 17 | #pragma warning(pop) 18 | #endif 19 | -------------------------------------------------------------------------------- /c_src/boost/boost/concept/detail/backward_compatibility.hpp: -------------------------------------------------------------------------------- 1 | // Copyright David Abrahams 2009. Distributed under the Boost 2 | // Software License, Version 1.0. (See accompanying 3 | // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 4 | #ifndef BOOST_CONCEPT_BACKWARD_COMPATIBILITY_DWA200968_HPP 5 | # define BOOST_CONCEPT_BACKWARD_COMPATIBILITY_DWA200968_HPP 6 | 7 | namespace boost 8 | { 9 | namespace concepts {} 10 | 11 | # if defined(BOOST_HAS_CONCEPTS) && !defined(BOOST_CONCEPT_NO_BACKWARD_KEYWORD) 12 | namespace concept = concepts; 13 | # endif 14 | } // namespace boost::concept 15 | 16 | #endif // BOOST_CONCEPT_BACKWARD_COMPATIBILITY_DWA200968_HPP 17 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/wrap.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright David Abrahams 2002. 2 | // Use, modification and distribution are subject to the Boost Software License, 3 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt). 5 | // 6 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 7 | 8 | #ifndef BOOST_TT_DETAIL_WRAP_HPP_INCLUDED 9 | #define BOOST_TT_DETAIL_WRAP_HPP_INCLUDED 10 | 11 | namespace boost { 12 | namespace type_traits { 13 | 14 | template struct wrap {}; 15 | 16 | }} // namespace boost::type_traits 17 | 18 | #endif // BOOST_TT_DETAIL_WRAP_HPP_INCLUDED 19 | -------------------------------------------------------------------------------- /c_src/boost/boost/random/detail/config.hpp: -------------------------------------------------------------------------------- 1 | /* boost random/detail/config.hpp header file 2 | * 3 | * Copyright Steven Watanabe 2009 4 | * Distributed under the Boost Software License, Version 1.0. (See 5 | * accompanying file LICENSE_1_0.txt or copy at 6 | * http://www.boost.org/LICENSE_1_0.txt) 7 | * 8 | * See http://www.boost.org for most recent version including documentation. 9 | * 10 | * $Id: config.hpp 52492 2009-04-19 14:55:57Z steven_watanabe $ 11 | */ 12 | 13 | #include 14 | 15 | #if (defined(BOOST_NO_OPERATORS_IN_NAMESPACE) || defined(BOOST_NO_MEMBER_TEMPLATE_FRIENDS)) \ 16 | && !defined(BOOST_MSVC) 17 | #define BOOST_RANDOM_NO_STREAM_OPERATORS 18 | #endif 19 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/msvc.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_MSVC_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_MSVC_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: msvc.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | 18 | // BOOST_MSVC is defined here: 19 | #include 20 | 21 | #endif // BOOST_MPL_AUX_CONFIG_MSVC_HPP_INCLUDED 22 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/workaround.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_WORKAROUND_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_WORKAROUND_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: workaround.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #endif // BOOST_MPL_AUX_CONFIG_WORKAROUND_HPP_INCLUDED 20 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/int.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_INT_HPP_INCLUDED 3 | #define BOOST_MPL_INT_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: int.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #define AUX_WRAPPER_VALUE_TYPE int 20 | #include 21 | 22 | #endif // BOOST_MPL_INT_HPP_INCLUDED 23 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/intel.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_INTEL_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_INTEL_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: intel.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | 18 | // BOOST_INTEL_CXX_VERSION is defined here: 19 | #include 20 | 21 | #endif // BOOST_MPL_AUX_CONFIG_INTEL_HPP_INCLUDED 22 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/facilities/identity.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_FACILITIES_IDENTITY_HPP 15 | # define BOOST_PREPROCESSOR_FACILITIES_IDENTITY_HPP 16 | # 17 | # include 18 | # 19 | # /* BOOST_PP_IDENTITY */ 20 | # 21 | # define BOOST_PP_IDENTITY(item) item BOOST_PP_EMPTY 22 | # 23 | # endif 24 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/type_trait_undef.hpp: -------------------------------------------------------------------------------- 1 | 2 | // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION 3 | 4 | // Copyright Aleksey Gurtovoy 2002-2004 5 | // 6 | // Distributed under the Boost Software License, Version 1.0. 7 | // (See accompanying file LICENSE_1_0.txt or copy at 8 | // http://www.boost.org/LICENSE_1_0.txt) 9 | 10 | // $Source$ 11 | // $Date: 2004-09-02 11:41:37 -0400 (Thu, 02 Sep 2004) $ 12 | // $Revision: 24874 $ 13 | 14 | #undef BOOST_TT_AUX_TYPE_TRAIT_DEF1 15 | #undef BOOST_TT_AUX_TYPE_TRAIT_SPEC1 16 | #undef BOOST_TT_AUX_TYPE_TRAIT_IMPL_SPEC1 17 | #undef BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1 18 | #undef BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_2 19 | #undef BOOST_TT_AUX_TYPE_TRAIT_IMPL_PARTIAL_SPEC1_1 20 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/limits/arity.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_LIMITS_ARITY_HPP_INCLUDED 3 | #define BOOST_MPL_LIMITS_ARITY_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: arity.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #if !defined(BOOST_MPL_LIMIT_METAFUNCTION_ARITY) 18 | # define BOOST_MPL_LIMIT_METAFUNCTION_ARITY 5 19 | #endif 20 | 21 | #endif // BOOST_MPL_LIMITS_ARITY_HPP_INCLUDED 22 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/use_preprocessed.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_USE_PREPROCESSED_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_USE_PREPROCESSED_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: use_preprocessed.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | // #define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS 18 | 19 | #endif // BOOST_MPL_AUX_CONFIG_USE_PREPROCESSED_HPP_INCLUDED 20 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/conversion_traits.hpp: -------------------------------------------------------------------------------- 1 | 2 | // Copyright 2000 John Maddock (john@johnmaddock.co.uk) 3 | // Copyright 2000 Jeremy Siek (jsiek@lsc.nd.edu) 4 | // Copyright 1999, 2000 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi) 5 | // 6 | // Use, modification and distribution are subject to the Boost Software License, 7 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 8 | // http://www.boost.org/LICENSE_1_0.txt). 9 | // 10 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 11 | 12 | #ifndef BOOST_TT_CONVERSION_TRAITS_HPP_INCLUDED 13 | #define BOOST_TT_CONVERSION_TRAITS_HPP_INCLUDED 14 | 15 | #include 16 | 17 | #endif // BOOST_TT_CONVERSION_TRAITS_HPP_INCLUDED 18 | -------------------------------------------------------------------------------- /c_src/boost/boost/random/detail/disable_warnings.hpp: -------------------------------------------------------------------------------- 1 | /* boost random/detail/disable_warnings.hpp header file 2 | * 3 | * Copyright Steven Watanabe 2009 4 | * Distributed under the Boost Software License, Version 1.0. (See 5 | * accompanying file LICENSE_1_0.txt or copy at 6 | * http://www.boost.org/LICENSE_1_0.txt) 7 | * 8 | * See http://www.boost.org for most recent version including documentation. 9 | * 10 | * $Id: disable_warnings.hpp 60755 2010-03-22 00:45:06Z steven_watanabe $ 11 | * 12 | */ 13 | 14 | // No #include guard. This header is intended to be included multiple times. 15 | 16 | #include 17 | 18 | #ifdef BOOST_MSVC 19 | #pragma warning(push) 20 | #pragma warning(disable:4512) 21 | #pragma warning(disable:4127) 22 | #pragma warning(disable:4724) 23 | #endif 24 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/has_type.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_HAS_TYPE_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_HAS_TYPE_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: has_type.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | namespace boost { namespace mpl { namespace aux { 20 | BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF(has_type, type, true) 21 | }}} 22 | 23 | #endif // BOOST_MPL_AUX_HAS_TYPE_HPP_INCLUDED 24 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/template_arity_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_TEMPLATE_ARITY_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_TEMPLATE_ARITY_FWD_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: template_arity_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | namespace boost { namespace mpl { namespace aux { 18 | 19 | template< typename F > struct template_arity; 20 | 21 | }}} 22 | 23 | #endif // BOOST_MPL_AUX_TEMPLATE_ARITY_FWD_HPP_INCLUDED 24 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/gcc.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_GCC_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_GCC_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: gcc.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #if defined(__GNUC__) && !defined(__EDG_VERSION__) 18 | # define BOOST_MPL_CFG_GCC ((__GNUC__ << 8) | __GNUC_MINOR__) 19 | #else 20 | # define BOOST_MPL_CFG_GCC 0 21 | #endif 22 | 23 | #endif // BOOST_MPL_AUX_CONFIG_GCC_HPP_INCLUDED 24 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/abi_prefix.hpp: -------------------------------------------------------------------------------- 1 | // abi_prefix header -------------------------------------------------------// 2 | 3 | // (c) Copyright John Maddock 2003 4 | 5 | // Use, modification and distribution are subject to the Boost Software License, 6 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 7 | // http://www.boost.org/LICENSE_1_0.txt). 8 | 9 | #ifndef BOOST_CONFIG_ABI_PREFIX_HPP 10 | # define BOOST_CONFIG_ABI_PREFIX_HPP 11 | #else 12 | # error double inclusion of header boost/config/abi_prefix.hpp is an error 13 | #endif 14 | 15 | #include 16 | 17 | // this must occur after all other includes and before any code appears: 18 | #ifdef BOOST_HAS_ABI_HEADERS 19 | # include BOOST_ABI_PREFIX 20 | #endif 21 | 22 | #if defined( __BORLANDC__ ) 23 | #pragma nopushoptwarn 24 | #endif 25 | 26 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/inc.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_INC_HPP 13 | # define BOOST_PREPROCESSOR_INC_HPP 14 | # 15 | # include 16 | # 17 | # endif 18 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/empty.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_EMPTY_HPP 13 | # define BOOST_PREPROCESSOR_EMPTY_HPP 14 | # 15 | # include 16 | # 17 | # endif 18 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/void_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_VOID_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_VOID_FWD_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: void_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 20 | 21 | struct void_; 22 | 23 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 24 | BOOST_MPL_AUX_ADL_BARRIER_DECL(void_) 25 | 26 | #endif // BOOST_MPL_VOID_FWD_HPP_INCLUDED 27 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/repeat.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_REPEAT_HPP 13 | # define BOOST_PREPROCESSOR_REPEAT_HPP 14 | # 15 | # include 16 | # 17 | # endif 18 | -------------------------------------------------------------------------------- /c_src/boost/boost/utility.hpp: -------------------------------------------------------------------------------- 1 | // Boost utility.hpp header file -------------------------------------------// 2 | 3 | // Copyright 1999-2003 Aleksey Gurtovoy. Use, modification, and distribution are 4 | // subject to the Boost Software License, Version 1.0. (See accompanying file 5 | // LICENSE_1_0.txt or a copy at .) 6 | 7 | // See for the library's home page. 8 | 9 | #ifndef BOOST_UTILITY_HPP 10 | #define BOOST_UTILITY_HPP 11 | 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | 20 | #endif // BOOST_UTILITY_HPP 21 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/comma_if.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_COMMA_IF_HPP 13 | # define BOOST_PREPROCESSOR_COMMA_IF_HPP 14 | # 15 | # include 16 | # 17 | # endif 18 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/identity.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_IDENTITY_HPP 13 | # define BOOST_PREPROCESSOR_IDENTITY_HPP 14 | # 15 | # include 16 | # 17 | # endif 18 | -------------------------------------------------------------------------------- /c_src/boost/boost/iterator/detail/config_undef.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright Thomas Witt 2002. 2 | // Distributed under the Boost Software License, Version 1.0. (See 3 | // accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | // no include guard multiple inclusion intended 7 | 8 | // 9 | // This is a temporary workaround until the bulk of this is 10 | // available in boost config. 11 | // 23/02/03 thw 12 | // 13 | 14 | #undef BOOST_NO_IS_CONVERTIBLE 15 | #undef BOOST_NO_IS_CONVERTIBLE_TEMPLATE 16 | #undef BOOST_NO_STRICT_ITERATOR_INTEROPERABILITY 17 | #undef BOOST_ARG_DEPENDENT_TYPENAME 18 | #undef BOOST_NO_LVALUE_RETURN_DETECTION 19 | #undef BOOST_NO_ONE_WAY_ITERATOR_INTEROP 20 | 21 | #ifdef BOOST_ITERATOR_CONFIG_DEF 22 | # undef BOOST_ITERATOR_CONFIG_DEF 23 | #else 24 | # error missing or nested #include config_def 25 | #endif 26 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/ice.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright John Maddock and Steve Cleary 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | // 9 | // macros and helpers for working with integral-constant-expressions. 10 | 11 | #ifndef BOOST_TT_ICE_HPP_INCLUDED 12 | #define BOOST_TT_ICE_HPP_INCLUDED 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | 20 | #endif // BOOST_TT_ICE_HPP_INCLUDED 21 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/yes_no_type.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright John Maddock and Steve Cleary 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | // 9 | // macros and helpers for working with integral-constant-expressions. 10 | 11 | #ifndef BOOST_TT_DETAIL_YES_NO_TYPE_HPP_INCLUDED 12 | #define BOOST_TT_DETAIL_YES_NO_TYPE_HPP_INCLUDED 13 | 14 | namespace boost { 15 | namespace type_traits { 16 | 17 | typedef char yes_type; 18 | struct no_type 19 | { 20 | char padding[8]; 21 | }; 22 | 23 | } // namespace type_traits 24 | } // namespace boost 25 | 26 | #endif // BOOST_TT_DETAIL_YES_NO_TYPE_HPP_INCLUDED 27 | -------------------------------------------------------------------------------- /c_src/boost/boost/call_traits.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 2 | // Use, modification and distribution are subject to the Boost Software License, 3 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt). 5 | // 6 | // See http://www.boost.org/libs/utility for most recent version including documentation. 7 | 8 | // See boost/detail/call_traits.hpp and boost/detail/ob_call_traits.hpp 9 | // for full copyright notices. 10 | 11 | #ifndef BOOST_CALL_TRAITS_HPP 12 | #define BOOST_CALL_TRAITS_HPP 13 | 14 | #ifndef BOOST_CONFIG_HPP 15 | #include 16 | #endif 17 | 18 | #ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION 19 | #include 20 | #else 21 | #include 22 | #endif 23 | 24 | #endif // BOOST_CALL_TRAITS_HPP 25 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/int_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_INT_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_INT_FWD_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: int_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 21 | 22 | template< BOOST_MPL_AUX_NTTP_DECL(int, N) > struct int_; 23 | 24 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 25 | BOOST_MPL_AUX_ADL_BARRIER_DECL(int_) 26 | 27 | #endif // BOOST_MPL_INT_FWD_HPP_INCLUDED 28 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/abi_suffix.hpp: -------------------------------------------------------------------------------- 1 | // abi_sufffix header -------------------------------------------------------// 2 | 3 | // (c) Copyright John Maddock 2003 4 | 5 | // Use, modification and distribution are subject to the Boost Software License, 6 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 7 | // http://www.boost.org/LICENSE_1_0.txt). 8 | 9 | // This header should be #included AFTER code that was preceded by a #include 10 | // . 11 | 12 | #ifndef BOOST_CONFIG_ABI_PREFIX_HPP 13 | # error Header boost/config/abi_suffix.hpp must only be used after boost/config/abi_prefix.hpp 14 | #else 15 | # undef BOOST_CONFIG_ABI_PREFIX_HPP 16 | #endif 17 | 18 | // the suffix header occurs after all of our code: 19 | #ifdef BOOST_HAS_ABI_HEADERS 20 | # include BOOST_ABI_SUFFIX 21 | #endif 22 | 23 | #if defined( __BORLANDC__ ) 24 | #pragma nopushoptwarn 25 | #endif 26 | 27 | 28 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/false_result.hpp: -------------------------------------------------------------------------------- 1 | // Copyright David Abrahams 2002. 2 | // Use, modification and distribution are subject to the Boost Software License, 3 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt). 5 | // 6 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 7 | 8 | 9 | #ifndef BOOST_TT_DETAIL_FALSE_RESULT_HPP_INCLUDED 10 | #define BOOST_TT_DETAIL_FALSE_RESULT_HPP_INCLUDED 11 | 12 | #include 13 | 14 | namespace boost { 15 | namespace type_traits { 16 | 17 | // Utility class which always "returns" false 18 | struct false_result 19 | { 20 | template struct result_ 21 | { 22 | BOOST_STATIC_CONSTANT(bool, value = false); 23 | }; 24 | }; 25 | 26 | }} // namespace boost::type_traits 27 | 28 | #endif // BOOST_TT_DETAIL_FALSE_RESULT_HPP_INCLUDED 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/compiler/sgi_mipspro.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2001 - 2002. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | // See http://www.boost.org for most recent version. 7 | 8 | // SGI C++ compiler setup: 9 | 10 | #define BOOST_COMPILER "SGI Irix compiler version " BOOST_STRINGIZE(_COMPILER_VERSION) 11 | 12 | #include "boost/config/compiler/common_edg.hpp" 13 | 14 | // 15 | // Threading support: 16 | // Turn this on unconditionally here, it will get turned off again later 17 | // if no threading API is detected. 18 | // 19 | #define BOOST_HAS_THREADS 20 | #define BOOST_NO_TWO_PHASE_NAME_LOOKUP 21 | 22 | #undef BOOST_NO_SWPRINTF 23 | #undef BOOST_DEDUCED_TYPENAME 24 | 25 | // 26 | // version check: 27 | // probably nothing to do here? 28 | 29 | 30 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/static_constant.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_STATIC_CONSTANT_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_STATIC_CONSTANT_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: static_constant.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #if !defined(BOOST_MPL_PREPROCESSING_MODE) 18 | // BOOST_STATIC_CONSTANT is defined here: 19 | # include 20 | #else 21 | // undef the macro for the preprocessing mode 22 | # undef BOOST_STATIC_CONSTANT 23 | #endif 24 | 25 | #endif // BOOST_MPL_AUX_CONFIG_STATIC_CONSTANT_HPP_INCLUDED 26 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/na_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_NA_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_NA_FWD_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: na_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 20 | 21 | // n.a. == not available 22 | struct na 23 | { 24 | typedef na type; 25 | enum { value = 0 }; 26 | }; 27 | 28 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 29 | BOOST_MPL_AUX_ADL_BARRIER_DECL(na) 30 | 31 | #endif // BOOST_MPL_AUX_NA_FWD_HPP_INCLUDED 32 | -------------------------------------------------------------------------------- /c_src/boost/boost/implicit_cast.hpp: -------------------------------------------------------------------------------- 1 | // Copyright David Abrahams 2003. 2 | // Distributed under the Boost Software License, Version 1.0. (See 3 | // accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt) 5 | #ifndef IMPLICIT_CAST_DWA200356_HPP 6 | # define IMPLICIT_CAST_DWA200356_HPP 7 | 8 | # include 9 | 10 | namespace boost { 11 | 12 | // implementation originally suggested by C. Green in 13 | // http://lists.boost.org/MailArchives/boost/msg00886.php 14 | 15 | // The use of identity creates a non-deduced form, so that the 16 | // explicit template argument must be supplied 17 | template 18 | inline T implicit_cast (typename mpl::identity::type x) { 19 | return x; 20 | } 21 | 22 | // incomplete return type now is here 23 | //template 24 | //void implicit_cast (...); 25 | 26 | } // namespace boost 27 | 28 | 29 | #endif // IMPLICIT_CAST_DWA200356_HPP 30 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/msvc_typename.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_MSVC_TYPENAME_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_MSVC_TYPENAME_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: msvc_typename.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) 21 | # define BOOST_MSVC_TYPENAME 22 | #else 23 | # define BOOST_MSVC_TYPENAME typename 24 | #endif 25 | 26 | #endif // BOOST_MPL_AUX_CONFIG_MSVC_TYPENAME_HPP_INCLUDED 27 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/ice_not.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock and Steve Cleary 2000. 2 | // Use, modification and distribution are subject to the Boost Software License, 3 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt). 5 | // 6 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 7 | 8 | #ifndef BOOST_TT_DETAIL_ICE_NOT_HPP_INCLUDED 9 | #define BOOST_TT_DETAIL_ICE_NOT_HPP_INCLUDED 10 | 11 | #include 12 | 13 | namespace boost { 14 | namespace type_traits { 15 | 16 | template 17 | struct ice_not 18 | { 19 | BOOST_STATIC_CONSTANT(bool, value = true); 20 | }; 21 | 22 | template <> 23 | struct ice_not 24 | { 25 | BOOST_STATIC_CONSTANT(bool, value = false); 26 | }; 27 | 28 | } // namespace type_traits 29 | } // namespace boost 30 | 31 | #endif // BOOST_TT_DETAIL_ICE_NOT_HPP_INCLUDED 32 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/lambda_arity_param.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_LAMBDA_ARITY_PARAM_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_LAMBDA_ARITY_PARAM_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: lambda_arity_param.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if !defined(BOOST_MPL_CFG_EXTENDED_TEMPLATE_PARAMETERS_MATCHING) 20 | # define BOOST_MPL_AUX_LAMBDA_ARITY_PARAM(param) 21 | #else 22 | # define BOOST_MPL_AUX_LAMBDA_ARITY_PARAM(param) , param 23 | #endif 24 | 25 | #endif // BOOST_MPL_AUX_LAMBDA_ARITY_PARAM_HPP_INCLUDED 26 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/arg_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_ARG_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_ARG_FWD_HPP_INCLUDED 4 | 5 | // Copyright Peter Dimov 2001-2002 6 | // Copyright Aleksey Gurtovoy 2001-2004 7 | // 8 | // Distributed under the Boost Software License, Version 1.0. 9 | // (See accompanying file LICENSE_1_0.txt or copy at 10 | // http://www.boost.org/LICENSE_1_0.txt) 11 | // 12 | // See http://www.boost.org/libs/mpl for documentation. 13 | 14 | // $Id: arg_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 15 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 16 | // $Revision: 49267 $ 17 | 18 | #include 19 | #include 20 | 21 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 22 | 23 | template< BOOST_MPL_AUX_NTTP_DECL(int, N) > struct arg; 24 | 25 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 26 | BOOST_MPL_AUX_ADL_BARRIER_DECL(arg) 27 | 28 | #endif // BOOST_MPL_ARG_FWD_HPP_INCLUDED 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/pp_counter.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_PP_COUNTER_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_PP_COUNTER_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2006 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: pp_counter.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #if !defined(BOOST_MPL_AUX_PP_COUNTER) 18 | # include 19 | # if BOOST_WORKAROUND(BOOST_MSVC, >= 1300) 20 | # define BOOST_MPL_AUX_PP_COUNTER() __COUNTER__ 21 | # else 22 | # define BOOST_MPL_AUX_PP_COUNTER() __LINE__ 23 | # endif 24 | #endif 25 | 26 | #endif // BOOST_MPL_AUX_CONFIG_PP_COUNTER_HPP_INCLUDED 27 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/integral_c_tag.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_INTEGRAL_C_TAG_HPP_INCLUDED 3 | #define BOOST_MPL_INTEGRAL_C_TAG_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: integral_c_tag.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | 18 | #include 19 | #include 20 | 21 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 22 | struct integral_c_tag { BOOST_STATIC_CONSTANT(int, value = 0); }; 23 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 24 | BOOST_MPL_AUX_ADL_BARRIER_DECL(integral_c_tag) 25 | 26 | #endif // BOOST_MPL_INTEGRAL_C_TAG_HPP_INCLUDED 27 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/no_tr1/cmath.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2008. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | // 6 | // The aim of this header is just to include but to do 7 | // so in a way that does not result in recursive inclusion of 8 | // the Boost TR1 components if boost/tr1/tr1/cmath is in the 9 | // include search path. We have to do this to avoid circular 10 | // dependencies: 11 | // 12 | 13 | #ifndef BOOST_CONFIG_CMATH 14 | # define BOOST_CONFIG_CMATH 15 | 16 | # ifndef BOOST_TR1_NO_RECURSION 17 | # define BOOST_TR1_NO_RECURSION 18 | # define BOOST_CONFIG_NO_CMATH_RECURSION 19 | # endif 20 | 21 | # include 22 | 23 | # ifdef BOOST_CONFIG_NO_CMATH_RECURSION 24 | # undef BOOST_TR1_NO_RECURSION 25 | # undef BOOST_CONFIG_NO_CMATH_RECURSION 26 | # endif 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/platform/vxworks.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright Dustin Spicuzza 2009. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | // See http://www.boost.org for most recent version. 7 | 8 | // vxWorks specific config options: 9 | 10 | #define BOOST_PLATFORM "vxWorks" 11 | 12 | #define BOOST_NO_CWCHAR 13 | #define BOOST_NO_INTRINSIC_WCHAR_T 14 | 15 | #if defined(__GNUC__) && defined(__STRICT_ANSI__) 16 | #define BOOST_NO_INT64_T 17 | #endif 18 | 19 | #define BOOST_HAS_UNISTD_H 20 | 21 | // these allow posix_features to work, since vxWorks doesn't 22 | // define them itself 23 | #define _POSIX_TIMERS 1 24 | #define _POSIX_THREADS 1 25 | 26 | // vxworks doesn't work with asio serial ports 27 | #define BOOST_ASIO_DISABLE_SERIAL_PORT 28 | 29 | // boilerplate code: 30 | #include 31 | 32 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/no_tr1/memory.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2005. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | // 6 | // The aim of this header is just to include but to do 7 | // so in a way that does not result in recursive inclusion of 8 | // the Boost TR1 components if boost/tr1/tr1/memory is in the 9 | // include search path. We have to do this to avoid circular 10 | // dependencies: 11 | // 12 | 13 | #ifndef BOOST_CONFIG_MEMORY 14 | # define BOOST_CONFIG_MEMORY 15 | 16 | # ifndef BOOST_TR1_NO_RECURSION 17 | # define BOOST_TR1_NO_RECURSION 18 | # define BOOST_CONFIG_NO_MEMORY_RECURSION 19 | # endif 20 | 21 | # include 22 | 23 | # ifdef BOOST_CONFIG_NO_MEMORY_RECURSION 24 | # undef BOOST_TR1_NO_RECURSION 25 | # undef BOOST_CONFIG_NO_MEMORY_RECURSION 26 | # endif 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/bcc.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_BCC_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_BCC_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2008 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: bcc.hpp 49272 2008-10-11 06:50:46Z agurtovoy $ 14 | // $Date: 2004-09-02 10:41:37 -0500 (Thu, 02 Sep 2004) $ 15 | // $Revision: 24874 $ 16 | 17 | #include 18 | 19 | #if !defined(BOOST_MPL_CFG_BCC590_WORKAROUNDS) \ 20 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 21 | && BOOST_WORKAROUND(__BORLANDC__, >= 0x590) \ 22 | && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) 23 | 24 | # define BOOST_MPL_CFG_BCC590_WORKAROUNDS 25 | 26 | #endif 27 | 28 | #endif // BOOST_MPL_AUX_CONFIG_BCC_HPP_INCLUDED 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/no_tr1/complex.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2005. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | // 6 | // The aim of this header is just to include but to do 7 | // so in a way that does not result in recursive inclusion of 8 | // the Boost TR1 components if boost/tr1/tr1/complex is in the 9 | // include search path. We have to do this to avoid circular 10 | // dependencies: 11 | // 12 | 13 | #ifndef BOOST_CONFIG_COMPLEX 14 | # define BOOST_CONFIG_COMPLEX 15 | 16 | # ifndef BOOST_TR1_NO_RECURSION 17 | # define BOOST_TR1_NO_RECURSION 18 | # define BOOST_CONFIG_NO_COMPLEX_RECURSION 19 | # endif 20 | 21 | # include 22 | 23 | # ifdef BOOST_CONFIG_NO_COMPLEX_RECURSION 24 | # undef BOOST_TR1_NO_RECURSION 25 | # undef BOOST_CONFIG_NO_COMPLEX_RECURSION 26 | # endif 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/no_tr1/utility.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2005. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | // 6 | // The aim of this header is just to include but to do 7 | // so in a way that does not result in recursive inclusion of 8 | // the Boost TR1 components if boost/tr1/tr1/utility is in the 9 | // include search path. We have to do this to avoid circular 10 | // dependencies: 11 | // 12 | 13 | #ifndef BOOST_CONFIG_UTILITY 14 | # define BOOST_CONFIG_UTILITY 15 | 16 | # ifndef BOOST_TR1_NO_RECURSION 17 | # define BOOST_TR1_NO_RECURSION 18 | # define BOOST_CONFIG_NO_UTILITY_RECURSION 19 | # endif 20 | 21 | # include 22 | 23 | # ifdef BOOST_CONFIG_NO_UTILITY_RECURSION 24 | # undef BOOST_TR1_NO_RECURSION 25 | # undef BOOST_CONFIG_NO_UTILITY_RECURSION 26 | # endif 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/static_cast.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_STATIC_CAST_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_STATIC_CAST_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: static_cast.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \ 20 | || BOOST_WORKAROUND(__GNUC__, < 3) \ 21 | || BOOST_WORKAROUND(__MWERKS__, <= 0x3001) 22 | # define BOOST_MPL_AUX_STATIC_CAST(T, expr) (T)(expr) 23 | #else 24 | # define BOOST_MPL_AUX_STATIC_CAST(T, expr) static_cast(expr) 25 | #endif 26 | 27 | #endif // BOOST_MPL_AUX_STATIC_CAST_HPP_INCLUDED 28 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/lambda.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_LAMBDA_HPP_INCLUDED 3 | #define BOOST_MPL_LAMBDA_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: lambda.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | #if !defined(BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT) 22 | # include 23 | #else 24 | # include 25 | # include 26 | # define BOOST_MPL_CFG_NO_IMPLICIT_METAFUNCTIONS 27 | #endif 28 | 29 | #endif // BOOST_MPL_LAMBDA_HPP_INCLUDED 30 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/logical/not.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_LOGICAL_NOT_HPP 15 | # define BOOST_PREPROCESSOR_LOGICAL_NOT_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # 21 | # /* BOOST_PP_NOT */ 22 | # 23 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 24 | # define BOOST_PP_NOT(x) BOOST_PP_COMPL(BOOST_PP_BOOL(x)) 25 | # else 26 | # define BOOST_PP_NOT(x) BOOST_PP_NOT_I(x) 27 | # define BOOST_PP_NOT_I(x) BOOST_PP_COMPL(BOOST_PP_BOOL(x)) 28 | # endif 29 | # 30 | # endif 31 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/no_tr1/functional.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2005. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | // 6 | // The aim of this header is just to include but to do 7 | // so in a way that does not result in recursive inclusion of 8 | // the Boost TR1 components if boost/tr1/tr1/functional is in the 9 | // include search path. We have to do this to avoid circular 10 | // dependencies: 11 | // 12 | 13 | #ifndef BOOST_CONFIG_FUNCTIONAL 14 | # define BOOST_CONFIG_FUNCTIONAL 15 | 16 | # ifndef BOOST_TR1_NO_RECURSION 17 | # define BOOST_TR1_NO_RECURSION 18 | # define BOOST_CONFIG_NO_FUNCTIONAL_RECURSION 19 | # endif 20 | 21 | # include 22 | 23 | # ifdef BOOST_CONFIG_NO_FUNCTIONAL_RECURSION 24 | # undef BOOST_TR1_NO_RECURSION 25 | # undef BOOST_CONFIG_NO_FUNCTIONAL_RECURSION 26 | # endif 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/bool_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_BOOL_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_BOOL_FWD_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: bool_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 20 | 21 | template< bool C_ > struct bool_; 22 | 23 | // shorcuts 24 | typedef bool_ true_; 25 | typedef bool_ false_; 26 | 27 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 28 | 29 | BOOST_MPL_AUX_ADL_BARRIER_DECL(bool_) 30 | BOOST_MPL_AUX_ADL_BARRIER_DECL(true_) 31 | BOOST_MPL_AUX_ADL_BARRIER_DECL(false_) 32 | 33 | #endif // BOOST_MPL_BOOL_FWD_HPP_INCLUDED 34 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/has_apply.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_HAS_APPLY_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_HAS_APPLY_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: has_apply.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | namespace boost { namespace mpl { namespace aux { 21 | #if !defined(BOOST_MPL_CFG_NO_HAS_APPLY) 22 | BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF(has_apply, apply, false) 23 | #else 24 | template< typename T, typename fallback_ = false_ > 25 | struct has_apply 26 | : fallback_ 27 | { 28 | }; 29 | #endif 30 | }}} 31 | 32 | #endif // BOOST_MPL_AUX_HAS_APPLY_HPP_INCLUDED 33 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/msvc_never_true.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_MSVC_NEVER_TRUE_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_MSVC_NEVER_TRUE_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: msvc_never_true.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) 21 | 22 | namespace boost { namespace mpl { namespace aux { 23 | 24 | template< typename T > 25 | struct msvc_never_true 26 | { 27 | enum { value = false }; 28 | }; 29 | 30 | }}} 31 | 32 | #endif // BOOST_MSVC 33 | 34 | #endif // BOOST_MPL_AUX_MSVC_NEVER_TRUE_HPP_INCLUDED 35 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/control/deduce_d.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_CONTROL_DEDUCE_D_HPP 13 | # define BOOST_PREPROCESSOR_CONTROL_DEDUCE_D_HPP 14 | # 15 | # include 16 | # include 17 | # 18 | # /* BOOST_PP_DEDUCE_D */ 19 | # 20 | # define BOOST_PP_DEDUCE_D() BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256) 21 | # 22 | # endif 23 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/is_rvalue_reference.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) John Maddock 2010. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_IS_RVALUE_REFERENCE_HPP_INCLUDED 10 | #define BOOST_TT_IS_RVALUE_REFERENCE_HPP_INCLUDED 11 | 12 | #include 13 | 14 | // should be the last #include 15 | #include 16 | 17 | namespace boost { 18 | 19 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_rvalue_reference,T,false) 20 | #ifndef BOOST_NO_RVALUE_REFERENCES 21 | BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_rvalue_reference,T&&,true) 22 | #endif 23 | 24 | } // namespace boost 25 | 26 | #include 27 | 28 | #endif // BOOST_TT_IS_REFERENCE_HPP_INCLUDED 29 | 30 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/platform/aix.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2001 - 2002. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | // See http://www.boost.org for most recent version. 7 | 8 | // IBM/Aix specific config options: 9 | 10 | #define BOOST_PLATFORM "IBM Aix" 11 | 12 | #define BOOST_HAS_UNISTD_H 13 | #define BOOST_HAS_NL_TYPES_H 14 | #define BOOST_HAS_NANOSLEEP 15 | #define BOOST_HAS_CLOCK_GETTIME 16 | 17 | // This needs support in "boost/cstdint.hpp" exactly like FreeBSD. 18 | // This platform has header named which includes all 19 | // the things needed. 20 | #define BOOST_HAS_STDINT_H 21 | 22 | // Threading API's: 23 | #define BOOST_HAS_PTHREADS 24 | #define BOOST_HAS_PTHREAD_DELAY_NP 25 | #define BOOST_HAS_SCHED_YIELD 26 | //#define BOOST_HAS_PTHREAD_YIELD 27 | 28 | // boilerplate code: 29 | #include 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/arg_typedef.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_ARG_TYPEDEF_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_ARG_TYPEDEF_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: arg_typedef.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | #if defined(BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT) \ 21 | || BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) 22 | 23 | # define BOOST_MPL_AUX_ARG_TYPEDEF(T, name) typedef T name; 24 | 25 | #else 26 | 27 | # define BOOST_MPL_AUX_ARG_TYPEDEF(T, name) /**/ 28 | 29 | #endif 30 | 31 | #endif // BOOST_MPL_AUX_ARG_TYPEDEF_HPP_INCLUDED 32 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/control/if.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_CONTROL_IF_HPP 15 | # define BOOST_PREPROCESSOR_CONTROL_IF_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # 21 | # /* BOOST_PP_IF */ 22 | # 23 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 24 | # define BOOST_PP_IF(cond, t, f) BOOST_PP_IIF(BOOST_PP_BOOL(cond), t, f) 25 | # else 26 | # define BOOST_PP_IF(cond, t, f) BOOST_PP_IF_I(cond, t, f) 27 | # define BOOST_PP_IF_I(cond, t, f) BOOST_PP_IIF(BOOST_PP_BOOL(cond), t, f) 28 | # endif 29 | # 30 | # endif 31 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/logical/and.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_LOGICAL_AND_HPP 15 | # define BOOST_PREPROCESSOR_LOGICAL_AND_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # 21 | # /* BOOST_PP_AND */ 22 | # 23 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 24 | # define BOOST_PP_AND(p, q) BOOST_PP_BITAND(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) 25 | # else 26 | # define BOOST_PP_AND(p, q) BOOST_PP_AND_I(p, q) 27 | # define BOOST_PP_AND_I(p, q) BOOST_PP_BITAND(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) 28 | # endif 29 | # 30 | # endif 31 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/ctps.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_CTPS_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_CTPS_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: ctps.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | #if !defined(BOOST_MPL_CFG_NO_NONTYPE_TEMPLATE_PARTIAL_SPEC) \ 21 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 22 | && BOOST_WORKAROUND(__BORLANDC__, < 0x582) 23 | 24 | # define BOOST_MPL_CFG_NO_NONTYPE_TEMPLATE_PARTIAL_SPEC 25 | 26 | #endif 27 | 28 | // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION is defined in 29 | 30 | #endif // BOOST_MPL_AUX_CONFIG_CTPS_HPP_INCLUDED 31 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/arrays.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_ARRAYS_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_ARRAYS_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2003-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: arrays.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | #if !defined(BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES) \ 21 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 22 | && ( BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \ 23 | || BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \ 24 | ) 25 | 26 | # define BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES 27 | 28 | #endif 29 | 30 | #endif // BOOST_MPL_AUX_CONFIG_ARRAYS_HPP_INCLUDED 31 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/stdlib/libcpp.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright Christopher Jefferson 2011. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | // See http://www.boost.org for most recent version. 7 | 8 | // config for libc++ 9 | // Might need more in here later. 10 | 11 | #if !defined(_LIBCPP_VERSION) 12 | # include 13 | # if !defined(_LIBCPP_VERSION) 14 | # error "This is not libc++!" 15 | # endif 16 | #endif 17 | 18 | #define BOOST_STDLIB "libc++ version " BOOST_STRINGIZE(_LIBCPP_VERSION) 19 | 20 | #define BOOST_HAS_THREADS 21 | 22 | #ifdef _LIBCPP_HAS_NO_VARIADICS 23 | # define BOOST_NO_0X_HDR_TUPLE 24 | #endif 25 | 26 | // 27 | // These appear to be unusable/incomplete so far: 28 | // 29 | # define BOOST_NO_0X_HDR_CHRONO 30 | # define BOOST_NO_0X_HDR_FUTURE 31 | # define BOOST_NO_0X_HDR_TYPE_TRAITS 32 | 33 | // libc++ uses a non-standard messages_base 34 | #define BOOST_NO_STD_MESSAGES 35 | 36 | // --- end --- 37 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/overload_resolution.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_OVERLOAD_RESOLUTION_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_OVERLOAD_RESOLUTION_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: overload_resolution.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if !defined(BOOST_MPL_CFG_BROKEN_OVERLOAD_RESOLUTION) \ 20 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 21 | && ( BOOST_WORKAROUND(__BORLANDC__, < 0x590) \ 22 | || BOOST_WORKAROUND(__MWERKS__, < 0x3001) \ 23 | ) 24 | 25 | # define BOOST_MPL_CFG_BROKEN_OVERLOAD_RESOLUTION 26 | 27 | #endif 28 | 29 | #endif // BOOST_MPL_AUX_CONFIG_OVERLOAD_RESOLUTION_HPP_INCLUDED 30 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/bool_trait_undef.hpp: -------------------------------------------------------------------------------- 1 | 2 | // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION 3 | 4 | // Copyright Aleksey Gurtovoy 2002-2004 5 | // 6 | // Distributed under the Boost Software License, Version 1.0. 7 | // (See accompanying file LICENSE_1_0.txt or copy at 8 | // http://www.boost.org/LICENSE_1_0.txt) 9 | 10 | // $Source$ 11 | // $Date: 2004-09-02 11:41:37 -0400 (Thu, 02 Sep 2004) $ 12 | // $Revision: 24874 $ 13 | 14 | #undef BOOST_TT_AUX_BOOL_TRAIT_VALUE_DECL 15 | #undef BOOST_TT_AUX_BOOL_C_BASE 16 | #undef BOOST_TT_AUX_BOOL_TRAIT_DEF1 17 | #undef BOOST_TT_AUX_BOOL_TRAIT_DEF2 18 | #undef BOOST_TT_AUX_BOOL_TRAIT_SPEC1 19 | #undef BOOST_TT_AUX_BOOL_TRAIT_SPEC2 20 | #undef BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1 21 | #undef BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC2 22 | #undef BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1 23 | #undef BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_2 24 | #undef BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_1 25 | #undef BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_2 26 | #undef BOOST_TT_AUX_BOOL_TRAIT_IMPL_PARTIAL_SPEC2_1 27 | #undef BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1 28 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/template_arity_spec.hpp: -------------------------------------------------------------------------------- 1 | 2 | // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION 3 | 4 | // Copyright Aleksey Gurtovoy 2002-2004 5 | // 6 | // Distributed under the Boost Software License, Version 1.0. 7 | // (See accompanying file LICENSE_1_0.txt or copy at 8 | // http://www.boost.org/LICENSE_1_0.txt) 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | #if defined(BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT) \ 17 | && defined(BOOST_MPL_CFG_BROKEN_OVERLOAD_RESOLUTION) 18 | # define BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(i, name) \ 19 | namespace mpl { namespace aux { \ 20 | template< BOOST_MPL_PP_PARAMS(i, typename T) > \ 21 | struct template_arity< \ 22 | name< BOOST_MPL_PP_PARAMS(i, T) > \ 23 | > \ 24 | : int_ \ 25 | { \ 26 | }; \ 27 | }} \ 28 | /**/ 29 | #else 30 | # define BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(i, name) /**/ 31 | #endif 32 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/always.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_ALWAYS_HPP_INCLUDED 3 | #define BOOST_MPL_ALWAYS_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: always.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | namespace boost { namespace mpl { 22 | 23 | template< typename Value > struct always 24 | { 25 | template< 26 | typename T 27 | BOOST_MPL_PP_NESTED_DEF_PARAMS_TAIL(1, typename T, na) 28 | > 29 | struct apply 30 | { 31 | typedef Value type; 32 | }; 33 | }; 34 | 35 | BOOST_MPL_AUX_ARITY_SPEC(1, always) 36 | 37 | }} 38 | 39 | #endif // BOOST_MPL_ALWAYS_HPP_INCLUDED 40 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/nttp_decl.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_NTTP_DECL_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_NTTP_DECL_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: nttp_decl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if defined(BOOST_MPL_CFG_NTTP_BUG) 20 | 21 | typedef bool _mpl_nttp_bool; 22 | typedef int _mpl_nttp_int; 23 | typedef unsigned _mpl_nttp_unsigned; 24 | typedef long _mpl_nttp_long; 25 | 26 | # include 27 | # define BOOST_MPL_AUX_NTTP_DECL(T, x) BOOST_PP_CAT(_mpl_nttp_,T) x /**/ 28 | 29 | #else 30 | 31 | # define BOOST_MPL_AUX_NTTP_DECL(T, x) T x /**/ 32 | 33 | #endif 34 | 35 | #endif // BOOST_MPL_AUX_NTTP_DECL_HPP_INCLUDED 36 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/cat.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_CAT_HPP 15 | # define BOOST_PREPROCESSOR_CAT_HPP 16 | # 17 | # include 18 | # 19 | # /* BOOST_PP_CAT */ 20 | # 21 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 22 | # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) 23 | # else 24 | # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_OO((a, b)) 25 | # define BOOST_PP_CAT_OO(par) BOOST_PP_CAT_I ## par 26 | # endif 27 | # 28 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() 29 | # define BOOST_PP_CAT_I(a, b) a ## b 30 | # else 31 | # define BOOST_PP_CAT_I(a, b) BOOST_PP_CAT_II(a ## b) 32 | # define BOOST_PP_CAT_II(res) res 33 | # endif 34 | # 35 | # endif 36 | -------------------------------------------------------------------------------- /c_src/boost/boost/random/detail/generator_bits.hpp: -------------------------------------------------------------------------------- 1 | /* boost random/detail/generator_bits.hpp header file 2 | * 3 | * Copyright Steven Watanabe 2011 4 | * Distributed under the Boost Software License, Version 1.0. (See 5 | * accompanying file LICENSE_1_0.txt or copy at 6 | * http://www.boost.org/LICENSE_1_0.txt) 7 | * 8 | * See http://www.boost.org for most recent version including documentation. 9 | * 10 | * $Id: generator_bits.hpp 72951 2011-07-07 04:57:37Z steven_watanabe $ 11 | * 12 | */ 13 | 14 | #ifndef BOOST_RANDOM_DETAIL_GENERATOR_BITS_HPP 15 | #define BOOST_RANDOM_DETAIL_GENERATOR_BITS_HPP 16 | 17 | #include 18 | 19 | namespace boost { 20 | namespace random { 21 | namespace detail { 22 | 23 | // This is a temporary measure that retains backwards 24 | // compatibility. 25 | template 26 | struct generator_bits { 27 | static std::size_t value() { 28 | return std::numeric_limits::digits; 29 | } 30 | }; 31 | 32 | } // namespace detail 33 | } // namespace random 34 | } // namespace boost 35 | 36 | #endif // BOOST_RANDOM_DETAIL_GENERATOR_BITS_HPP 37 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/is_float.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TYPE_TRAITS_IS_FLOAT_HPP_INCLUDED 10 | #define BOOST_TYPE_TRAITS_IS_FLOAT_HPP_INCLUDED 11 | 12 | // should be the last #include 13 | #include 14 | 15 | namespace boost { 16 | 17 | //* is a type T a floating-point type described in the standard (3.9.1p8) 18 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_float,T,false) 19 | BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_float,float,true) 20 | BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_float,double,true) 21 | BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_float,long double,true) 22 | 23 | } // namespace boost 24 | 25 | #include 26 | 27 | #endif // BOOST_TYPE_TRAITS_IS_FLOAT_HPP_INCLUDED 28 | -------------------------------------------------------------------------------- /c_src/boost/boost/random/detail/generator_seed_seq.hpp: -------------------------------------------------------------------------------- 1 | /* boost random/mersenne_twister.hpp header file 2 | * 3 | * Copyright Jens Maurer 2000-2001 4 | * Copyright Steven Watanabe 2010 5 | * Distributed under the Boost Software License, Version 1.0. (See 6 | * accompanying file LICENSE_1_0.txt or copy at 7 | * http://www.boost.org/LICENSE_1_0.txt) 8 | * 9 | * See http://www.boost.org for most recent version including documentation. 10 | * 11 | * $Id: generator_seed_seq.hpp 71018 2011-04-05 21:27:52Z steven_watanabe $ 12 | * 13 | */ 14 | 15 | #ifndef BOOST_RANDOM_DETAIL_GENERATOR_SEED_SEQ_HPP_INCLUDED 16 | #define BOOST_RANDOM_DETAIL_GENERATOR_SEED_SEQ_HPP_INCLUDED 17 | 18 | namespace boost { 19 | namespace random { 20 | namespace detail { 21 | 22 | template 23 | class generator_seed_seq { 24 | public: 25 | generator_seed_seq(Generator& g) : gen(&g) {} 26 | template 27 | void generate(It first, It last) { 28 | for(; first != last; ++first) { 29 | *first = (*gen)(); 30 | } 31 | } 32 | private: 33 | Generator* gen; 34 | }; 35 | 36 | } 37 | } 38 | } 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/integral_c_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_INTEGRAL_C_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_INTEGRAL_C_FWD_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2006 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: integral_c_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 21 | 22 | #if BOOST_WORKAROUND(__HP_aCC, <= 53800) 23 | // the type of non-type template arguments may not depend on template arguments 24 | template< typename T, long N > struct integral_c; 25 | #else 26 | template< typename T, T N > struct integral_c; 27 | #endif 28 | 29 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 30 | BOOST_MPL_AUX_ADL_BARRIER_DECL(integral_c) 31 | 32 | #endif // BOOST_MPL_INTEGRAL_C_FWD_HPP_INCLUDED 33 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/ice_eq.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock and Steve Cleary 2000. 2 | // Use, modification and distribution are subject to the Boost Software License, 3 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt). 5 | // 6 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 7 | 8 | #ifndef BOOST_TT_DETAIL_ICE_EQ_HPP_INCLUDED 9 | #define BOOST_TT_DETAIL_ICE_EQ_HPP_INCLUDED 10 | 11 | #include 12 | 13 | namespace boost { 14 | namespace type_traits { 15 | 16 | template 17 | struct ice_eq 18 | { 19 | BOOST_STATIC_CONSTANT(bool, value = (b1 == b2)); 20 | }; 21 | 22 | template 23 | struct ice_ne 24 | { 25 | BOOST_STATIC_CONSTANT(bool, value = (b1 != b2)); 26 | }; 27 | 28 | #ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION 29 | template bool const ice_eq::value; 30 | template bool const ice_ne::value; 31 | #endif 32 | 33 | } // namespace type_traits 34 | } // namespace boost 35 | 36 | #endif // BOOST_TT_DETAIL_ICE_EQ_HPP_INCLUDED 37 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/common_name_wknd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_COMMON_NAME_WKND_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_COMMON_NAME_WKND_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: common_name_wknd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if BOOST_WORKAROUND(__BORLANDC__, < 0x561) 20 | // agurt, 12/nov/02: to suppress the bogus "Cannot have both a template class 21 | // and function named 'xxx'" diagnostic 22 | # define BOOST_MPL_AUX_COMMON_NAME_WKND(name) \ 23 | namespace name_##wknd { \ 24 | template< typename > void name(); \ 25 | } \ 26 | /**/ 27 | 28 | #else 29 | 30 | # define BOOST_MPL_AUX_COMMON_NAME_WKND(name) /**/ 31 | 32 | #endif // __BORLANDC__ 33 | 34 | #endif // BOOST_MPL_AUX_COMMON_NAME_WKND_HPP_INCLUDED 35 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/bind.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_BIND_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_BIND_HPP_INCLUDED 4 | 5 | // Copyright David Abrahams 2002 6 | // Copyright Aleksey Gurtovoy 2002-2004 7 | // 8 | // Distributed under the Boost Software License, Version 1.0. 9 | // (See accompanying file LICENSE_1_0.txt or copy at 10 | // http://www.boost.org/LICENSE_1_0.txt) 11 | // 12 | // See http://www.boost.org/libs/mpl for documentation. 13 | 14 | // $Id: bind.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 15 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 16 | // $Revision: 49267 $ 17 | 18 | #include 19 | #include 20 | 21 | #if !defined(BOOST_MPL_CFG_NO_BIND_TEMPLATE) \ 22 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 23 | && ( BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \ 24 | || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \ 25 | ) 26 | 27 | # define BOOST_MPL_CFG_NO_BIND_TEMPLATE 28 | 29 | #endif 30 | 31 | //#define BOOST_MPL_CFG_NO_UNNAMED_PLACEHOLDER_SUPPORT 32 | 33 | #endif // BOOST_MPL_AUX_CONFIG_BIND_HPP_INCLUDED 34 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/ice_or.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock and Steve Cleary 2000. 2 | // Use, modification and distribution are subject to the Boost Software License, 3 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 4 | // http://www.boost.org/LICENSE_1_0.txt). 5 | // 6 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 7 | 8 | #ifndef BOOST_TT_DETAIL_ICE_OR_HPP_INCLUDED 9 | #define BOOST_TT_DETAIL_ICE_OR_HPP_INCLUDED 10 | 11 | #include 12 | 13 | namespace boost { 14 | namespace type_traits { 15 | 16 | template 17 | struct ice_or; 18 | 19 | template 20 | struct ice_or 21 | { 22 | BOOST_STATIC_CONSTANT(bool, value = true); 23 | }; 24 | 25 | template <> 26 | struct ice_or 27 | { 28 | BOOST_STATIC_CONSTANT(bool, value = false); 29 | }; 30 | 31 | } // namespace type_traits 32 | } // namespace boost 33 | 34 | #endif // BOOST_TT_DETAIL_ICE_OR_HPP_INCLUDED 35 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/has_apply.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_HAS_APPLY_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_HAS_APPLY_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: has_apply.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | #if !defined(BOOST_MPL_CFG_NO_HAS_APPLY) \ 22 | && ( defined(BOOST_MPL_CFG_NO_HAS_XXX) \ 23 | || BOOST_WORKAROUND(__EDG_VERSION__, < 300) \ 24 | || BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \ 25 | || BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3202)) \ 26 | ) 27 | 28 | # define BOOST_MPL_CFG_NO_HAS_APPLY 29 | 30 | #endif 31 | 32 | #endif // BOOST_MPL_AUX_CONFIG_HAS_APPLY_HPP_INCLUDED 33 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/lambda.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_LAMBDA_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_LAMBDA_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: lambda.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | // agurt, 15/jan/02: full-fledged implementation requires both 21 | // template template parameters _and_ partial specialization 22 | 23 | #if !defined(BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT) \ 24 | && ( defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) \ 25 | || defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \ 26 | ) 27 | 28 | # define BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT 29 | 30 | #endif 31 | 32 | #endif // BOOST_MPL_AUX_CONFIG_LAMBDA_HPP_INCLUDED 33 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/punctuation/comma_if.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_PUNCTUATION_COMMA_IF_HPP 15 | # define BOOST_PREPROCESSOR_PUNCTUATION_COMMA_IF_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # include 21 | # 22 | # /* BOOST_PP_COMMA_IF */ 23 | # 24 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 25 | # define BOOST_PP_COMMA_IF(cond) BOOST_PP_IF(cond, BOOST_PP_COMMA, BOOST_PP_EMPTY)() 26 | # else 27 | # define BOOST_PP_COMMA_IF(cond) BOOST_PP_COMMA_IF_I(cond) 28 | # define BOOST_PP_COMMA_IF_I(cond) BOOST_PP_IF(cond, BOOST_PP_COMMA, BOOST_PP_EMPTY)() 29 | # endif 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/ice_and.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock and Steve Cleary 2000. 2 | // 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_DETAIL_ICE_AND_HPP_INCLUDED 10 | #define BOOST_TT_DETAIL_ICE_AND_HPP_INCLUDED 11 | 12 | #include 13 | 14 | namespace boost { 15 | namespace type_traits { 16 | 17 | template 18 | struct ice_and; 19 | 20 | template 21 | struct ice_and 22 | { 23 | BOOST_STATIC_CONSTANT(bool, value = false); 24 | }; 25 | 26 | template <> 27 | struct ice_and 28 | { 29 | BOOST_STATIC_CONSTANT(bool, value = true); 30 | }; 31 | 32 | } // namespace type_traits 33 | } // namespace boost 34 | 35 | #endif // BOOST_TT_DETAIL_ICE_AND_HPP_INCLUDED 36 | -------------------------------------------------------------------------------- /c_src/boost/boost/noncopyable.hpp: -------------------------------------------------------------------------------- 1 | // Boost noncopyable.hpp header file --------------------------------------// 2 | 3 | // (C) Copyright Beman Dawes 1999-2003. Distributed under the Boost 4 | // Software License, Version 1.0. (See accompanying file 5 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 | 7 | // See http://www.boost.org/libs/utility for documentation. 8 | 9 | #ifndef BOOST_NONCOPYABLE_HPP_INCLUDED 10 | #define BOOST_NONCOPYABLE_HPP_INCLUDED 11 | 12 | namespace boost { 13 | 14 | // Private copy constructor and copy assignment ensure classes derived from 15 | // class noncopyable cannot be copied. 16 | 17 | // Contributed by Dave Abrahams 18 | 19 | namespace noncopyable_ // protection from unintended ADL 20 | { 21 | class noncopyable 22 | { 23 | protected: 24 | noncopyable() {} 25 | ~noncopyable() {} 26 | private: // emphasize the following members are private 27 | noncopyable( const noncopyable& ); 28 | const noncopyable& operator=( const noncopyable& ); 29 | }; 30 | } 31 | 32 | typedef noncopyable_::noncopyable noncopyable; 33 | 34 | } // namespace boost 35 | 36 | #endif // BOOST_NONCOPYABLE_HPP_INCLUDED 37 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/compiler/kai.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2001. 2 | // (C) Copyright David Abrahams 2002. 3 | // (C) Copyright Aleksey Gurtovoy 2002. 4 | // Use, modification and distribution are subject to the 5 | // Boost Software License, Version 1.0. (See accompanying file 6 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 7 | 8 | // See http://www.boost.org for most recent version. 9 | 10 | // Kai C++ compiler setup: 11 | 12 | #include "boost/config/compiler/common_edg.hpp" 13 | 14 | # if (__KCC_VERSION <= 4001) || !defined(BOOST_STRICT_CONFIG) 15 | // at least on Sun, the contents of is not in namespace std 16 | # define BOOST_NO_STDC_NAMESPACE 17 | # endif 18 | 19 | // see also common_edg.hpp which needs a special check for __KCC 20 | # if !defined(_EXCEPTIONS) && !defined(BOOST_NO_EXCEPTIONS) 21 | # define BOOST_NO_EXCEPTIONS 22 | # endif 23 | 24 | // 25 | // last known and checked version is 4001: 26 | #if (__KCC_VERSION > 4001) 27 | # if defined(BOOST_ASSERT_CONFIG) 28 | # error "Unknown compiler version - please run the configure tests and report the results" 29 | # endif 30 | #endif 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/stringize.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_STRINGIZE_HPP 15 | # define BOOST_PREPROCESSOR_STRINGIZE_HPP 16 | # 17 | # include 18 | # 19 | # /* BOOST_PP_STRINGIZE */ 20 | # 21 | # if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() 22 | # define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_A((text)) 23 | # define BOOST_PP_STRINGIZE_A(arg) BOOST_PP_STRINGIZE_I arg 24 | # elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 25 | # define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_OO((text)) 26 | # define BOOST_PP_STRINGIZE_OO(par) BOOST_PP_STRINGIZE_I ## par 27 | # else 28 | # define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_I(text) 29 | # endif 30 | # 31 | # define BOOST_PP_STRINGIZE_I(text) #text 32 | # 33 | # endif 34 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/na_assert.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_NA_ASSERT_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_NA_ASSERT_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: na_assert.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | #if !BOOST_WORKAROUND(_MSC_FULL_VER, <= 140050601) \ 22 | && !BOOST_WORKAROUND(__EDG_VERSION__, <= 243) 23 | # include 24 | # define BOOST_MPL_AUX_ASSERT_NOT_NA(x) \ 25 | BOOST_MPL_ASSERT_NOT((boost::mpl::is_na)) \ 26 | /**/ 27 | #else 28 | # include 29 | # define BOOST_MPL_AUX_ASSERT_NOT_NA(x) \ 30 | BOOST_STATIC_ASSERT(!boost::mpl::is_na::value) \ 31 | /**/ 32 | #endif 33 | 34 | #endif // BOOST_MPL_AUX_NA_ASSERT_HPP_INCLUDED 35 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/bool.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_BOOL_HPP_INCLUDED 3 | #define BOOST_MPL_BOOL_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: bool.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 22 | 23 | template< bool C_ > struct bool_ 24 | { 25 | BOOST_STATIC_CONSTANT(bool, value = C_); 26 | typedef integral_c_tag tag; 27 | typedef bool_ type; 28 | typedef bool value_type; 29 | operator bool() const { return this->value; } 30 | }; 31 | 32 | #if !defined(BOOST_NO_INCLASS_MEMBER_INITIALIZATION) 33 | template< bool C_ > 34 | bool const bool_::value; 35 | #endif 36 | 37 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 38 | 39 | #endif // BOOST_MPL_BOOL_HPP_INCLUDED 40 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/preprocessed/gcc/bind_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | // Copyright Aleksey Gurtovoy 2000-2004 3 | // 4 | // Distributed under the Boost Software License, Version 1.0. 5 | // (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt) 7 | // 8 | 9 | // Preprocessed version of "boost/mpl/bind_fwd.hpp" header 10 | // -- DO NOT modify by hand! 11 | 12 | namespace boost { namespace mpl { 13 | 14 | template< 15 | typename F, typename T1 = na, typename T2 = na, typename T3 = na 16 | , typename T4 = na, typename T5 = na 17 | > 18 | struct bind; 19 | 20 | template< 21 | typename F 22 | > 23 | struct bind0; 24 | 25 | template< 26 | typename F, typename T1 27 | > 28 | struct bind1; 29 | 30 | template< 31 | typename F, typename T1, typename T2 32 | > 33 | struct bind2; 34 | 35 | template< 36 | typename F, typename T1, typename T2, typename T3 37 | > 38 | struct bind3; 39 | 40 | template< 41 | typename F, typename T1, typename T2, typename T3, typename T4 42 | > 43 | struct bind4; 44 | 45 | template< 46 | typename F, typename T1, typename T2, typename T3, typename T4 47 | , typename T5 48 | > 49 | struct bind5; 50 | 51 | }} 52 | 53 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/preprocessed/gcc/apply_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | // Copyright Aleksey Gurtovoy 2000-2004 3 | // 4 | // Distributed under the Boost Software License, Version 1.0. 5 | // (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt) 7 | // 8 | 9 | // Preprocessed version of "boost/mpl/apply_fwd.hpp" header 10 | // -- DO NOT modify by hand! 11 | 12 | namespace boost { namespace mpl { 13 | 14 | template< 15 | typename F, typename T1 = na, typename T2 = na, typename T3 = na 16 | , typename T4 = na, typename T5 = na 17 | > 18 | struct apply; 19 | 20 | template< 21 | typename F 22 | > 23 | struct apply0; 24 | 25 | template< 26 | typename F, typename T1 27 | > 28 | struct apply1; 29 | 30 | template< 31 | typename F, typename T1, typename T2 32 | > 33 | struct apply2; 34 | 35 | template< 36 | typename F, typename T1, typename T2, typename T3 37 | > 38 | struct apply3; 39 | 40 | template< 41 | typename F, typename T1, typename T2, typename T3, typename T4 42 | > 43 | struct apply4; 44 | 45 | template< 46 | typename F, typename T1, typename T2, typename T3, typename T4 47 | , typename T5 48 | > 49 | struct apply5; 50 | 51 | }} 52 | 53 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/has_xxx.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_HAS_XXX_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_HAS_XXX_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // Copyright David Abrahams 2002-2003 7 | // 8 | // Distributed under the Boost Software License, Version 1.0. 9 | // (See accompanying file LICENSE_1_0.txt or copy at 10 | // http://www.boost.org/LICENSE_1_0.txt) 11 | // 12 | // See http://www.boost.org/libs/mpl for documentation. 13 | 14 | // $Id: has_xxx.hpp 63518 2010-07-02 08:32:03Z agurtovoy $ 15 | // $Date: 2010-07-02 04:32:03 -0400 (Fri, 02 Jul 2010) $ 16 | // $Revision: 63518 $ 17 | 18 | #include 19 | #include 20 | 21 | // agurt, 11/jan/03: signals a stub-only 'has_xxx' implementation 22 | 23 | #if !defined(BOOST_MPL_CFG_NO_HAS_XXX) \ 24 | && ( defined(BOOST_MPL_CFG_BROKEN_OVERLOAD_RESOLUTION) \ 25 | || BOOST_WORKAROUND(__GNUC__, <= 2) \ 26 | || BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) \ 27 | ) 28 | 29 | # define BOOST_MPL_CFG_NO_HAS_XXX 30 | # define BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE 31 | 32 | #endif 33 | 34 | #endif // BOOST_MPL_AUX_CONFIG_HAS_XXX_HPP_INCLUDED 35 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/identity.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_IDENTITY_HPP_INCLUDED 3 | #define BOOST_MPL_IDENTITY_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: identity.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | namespace boost { namespace mpl { 21 | 22 | template< 23 | typename BOOST_MPL_AUX_NA_PARAM(T) 24 | > 25 | struct identity 26 | { 27 | typedef T type; 28 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1, identity, (T)) 29 | }; 30 | 31 | template< 32 | typename BOOST_MPL_AUX_NA_PARAM(T) 33 | > 34 | struct make_identity 35 | { 36 | typedef identity type; 37 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1, make_identity, (T)) 38 | }; 39 | 40 | BOOST_MPL_AUX_NA_SPEC_NO_ETI(1, identity) 41 | BOOST_MPL_AUX_NA_SPEC_NO_ETI(1, make_identity) 42 | 43 | }} 44 | 45 | #endif // BOOST_MPL_IDENTITY_HPP_INCLUDED 46 | -------------------------------------------------------------------------------- /c_src/boost/boost/version.hpp: -------------------------------------------------------------------------------- 1 | // Boost version.hpp configuration header file ------------------------------// 2 | 3 | // (C) Copyright John maddock 1999. Distributed under the Boost 4 | // Software License, Version 1.0. (See accompanying file 5 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 | 7 | // See http://www.boost.org/libs/config for documentation 8 | 9 | #ifndef BOOST_VERSION_HPP 10 | #define BOOST_VERSION_HPP 11 | 12 | // 13 | // Caution, this is the only boost header that is guarenteed 14 | // to change with every boost release, including this header 15 | // will cause a recompile every time a new boost version is 16 | // released. 17 | // 18 | // BOOST_VERSION % 100 is the patch level 19 | // BOOST_VERSION / 100 % 1000 is the minor version 20 | // BOOST_VERSION / 100000 is the major version 21 | 22 | #define BOOST_VERSION 104700 23 | 24 | // 25 | // BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION 26 | // but as a *string* in the form "x_y[_z]" where x is the major version 27 | // number, y is the minor version number, and z is the patch level if not 0. 28 | // This is used by to select which library version to link to. 29 | 30 | #define BOOST_LIB_VERSION "1_47" 31 | 32 | #endif 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/array/data.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_ARRAY_DATA_HPP 13 | # define BOOST_PREPROCESSOR_ARRAY_DATA_HPP 14 | # 15 | # include 16 | # include 17 | # 18 | # /* BOOST_PP_ARRAY_DATA */ 19 | # 20 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 21 | # define BOOST_PP_ARRAY_DATA(array) BOOST_PP_TUPLE_ELEM(2, 1, array) 22 | # else 23 | # define BOOST_PP_ARRAY_DATA(array) BOOST_PP_ARRAY_DATA_I(array) 24 | # define BOOST_PP_ARRAY_DATA_I(array) BOOST_PP_ARRAY_DATA_II array 25 | # define BOOST_PP_ARRAY_DATA_II(size, data) data 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/array/size.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_ARRAY_SIZE_HPP 13 | # define BOOST_PREPROCESSOR_ARRAY_SIZE_HPP 14 | # 15 | # include 16 | # include 17 | # 18 | # /* BOOST_PP_ARRAY_SIZE */ 19 | # 20 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 21 | # define BOOST_PP_ARRAY_SIZE(array) BOOST_PP_TUPLE_ELEM(2, 0, array) 22 | # else 23 | # define BOOST_PP_ARRAY_SIZE(array) BOOST_PP_ARRAY_SIZE_I(array) 24 | # define BOOST_PP_ARRAY_SIZE_I(array) BOOST_PP_ARRAY_SIZE_II array 25 | # define BOOST_PP_ARRAY_SIZE_II(size, data) size 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/nttp.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_NTTP_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_NTTP_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: nttp.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | // MSVC 6.5 ICE-s on the code as simple as this (see "aux_/nttp_decl.hpp" 21 | // for a workaround): 22 | // 23 | // namespace std { 24 | // template< typename Char > struct string; 25 | // } 26 | // 27 | // void foo(std::string); 28 | // 29 | // namespace boost { namespace mpl { 30 | // template< int > struct arg; 31 | // }} 32 | 33 | #if !defined(BOOST_MPL_CFG_NTTP_BUG) \ 34 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 35 | && BOOST_WORKAROUND(BOOST_MSVC, < 1300) 36 | 37 | # define BOOST_MPL_CFG_NTTP_BUG 38 | 39 | #endif 40 | 41 | #endif // BOOST_MPL_AUX_CONFIG_NTTP_HPP_INCLUDED 42 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/integral.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_INTEGRAL_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_INTEGRAL_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: integral.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | #if !defined(BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS) \ 21 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 22 | && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) 23 | 24 | # define BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS 25 | 26 | #endif 27 | 28 | #if !defined(BOOST_MPL_CFG_NO_NESTED_VALUE_ARITHMETIC) \ 29 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 30 | && ( BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \ 31 | || BOOST_WORKAROUND(__EDG_VERSION__, <= 238) \ 32 | ) 33 | 34 | # define BOOST_MPL_CFG_NO_NESTED_VALUE_ARITHMETIC 35 | 36 | #endif 37 | 38 | #endif // BOOST_MPL_AUX_CONFIG_INTEGRAL_HPP_INCLUDED 39 | -------------------------------------------------------------------------------- /c_src/boost/boost/circular_buffer_fwd.hpp: -------------------------------------------------------------------------------- 1 | // Forward declaration of the circular buffer and its adaptor. 2 | 3 | // Copyright (c) 2003-2008 Jan Gaspar 4 | 5 | // Use, modification, and distribution is subject to the Boost Software 6 | // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 7 | // http://www.boost.org/LICENSE_1_0.txt) 8 | 9 | // See www.boost.org/libs/circular_buffer for documentation. 10 | 11 | #if !defined(BOOST_CIRCULAR_BUFFER_FWD_HPP) 12 | #define BOOST_CIRCULAR_BUFFER_FWD_HPP 13 | 14 | #if defined(_MSC_VER) && _MSC_VER >= 1200 15 | #pragma once 16 | #endif 17 | 18 | #include 19 | #if !defined(BOOST_NO_STD_ALLOCATOR) 20 | #include 21 | #else 22 | #include 23 | #endif 24 | 25 | namespace boost { 26 | 27 | #if !defined(BOOST_NO_STD_ALLOCATOR) 28 | #define BOOST_CB_DEFAULT_ALLOCATOR(T) std::allocator 29 | #else 30 | #define BOOST_CB_DEFAULT_ALLOCATOR(T) BOOST_DEDUCED_TYPENAME std::vector::allocator_type 31 | #endif 32 | 33 | template 34 | class circular_buffer; 35 | 36 | template 37 | class circular_buffer_space_optimized; 38 | 39 | #undef BOOST_CB_DEFAULT_ALLOCATOR 40 | 41 | } // namespace boost 42 | 43 | #endif // #if !defined(BOOST_CIRCULAR_BUFFER_FWD_HPP) 44 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/not.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_NOT_HPP_INCLUDED 3 | #define BOOST_MPL_NOT_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: not.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace boost { namespace mpl { 24 | 25 | namespace aux { 26 | 27 | template< BOOST_MPL_AUX_NTTP_DECL(long, C_) > // 'long' is intentional here 28 | struct not_impl 29 | : bool_ 30 | { 31 | }; 32 | 33 | } // namespace aux 34 | 35 | 36 | template< 37 | typename BOOST_MPL_AUX_NA_PARAM(T) 38 | > 39 | struct not_ 40 | : aux::not_impl< 41 | BOOST_MPL_AUX_NESTED_TYPE_WKND(T)::value 42 | > 43 | { 44 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1,not_,(T)) 45 | }; 46 | 47 | BOOST_MPL_AUX_NA_SPEC(1,not_) 48 | 49 | }} 50 | 51 | #endif // BOOST_MPL_NOT_HPP_INCLUDED 52 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/is_void.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_IS_VOID_HPP_INCLUDED 10 | #define BOOST_TT_IS_VOID_HPP_INCLUDED 11 | 12 | #include 13 | 14 | // should be the last #include 15 | #include 16 | 17 | namespace boost { 18 | 19 | //* is a type T void - is_void 20 | #if defined( __CODEGEARC__ ) 21 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_void,T,__is_void(T)) 22 | #else 23 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_void,T,false) 24 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(is_void,void,true) 25 | 26 | #ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS 27 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(is_void,void const,true) 28 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(is_void,void volatile,true) 29 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(is_void,void const volatile,true) 30 | #endif 31 | 32 | #endif // non-CodeGear implementation 33 | 34 | } // namespace boost 35 | 36 | #include 37 | 38 | #endif // BOOST_TT_IS_VOID_HPP_INCLUDED 39 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/arity.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_ARITY_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_ARITY_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: arity.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if defined(BOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) 20 | 21 | # include 22 | # include 23 | 24 | namespace boost { namespace mpl { namespace aux { 25 | 26 | // agurt, 15/mar/02: it's possible to implement the template so that it will 27 | // "just work" and do not require any specialization, but not on the compilers 28 | // that require the arity workaround in the first place 29 | template< typename F, BOOST_MPL_AUX_NTTP_DECL(int, N) > 30 | struct arity 31 | { 32 | BOOST_STATIC_CONSTANT(int, value = N); 33 | }; 34 | 35 | }}} 36 | 37 | #endif // BOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES 38 | 39 | #endif // BOOST_MPL_AUX_ARITY_HPP_INCLUDED 40 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/control/expr_iif.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_CONTROL_EXPR_IIF_HPP 13 | # define BOOST_PREPROCESSOR_CONTROL_EXPR_IIF_HPP 14 | # 15 | # include 16 | # 17 | # /* BOOST_PP_EXPR_IIF */ 18 | # 19 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 20 | # define BOOST_PP_EXPR_IIF(bit, expr) BOOST_PP_EXPR_IIF_I(bit, expr) 21 | # else 22 | # define BOOST_PP_EXPR_IIF(bit, expr) BOOST_PP_EXPR_IIF_OO((bit, expr)) 23 | # define BOOST_PP_EXPR_IIF_OO(par) BOOST_PP_EXPR_IIF_I ## par 24 | # endif 25 | # 26 | # define BOOST_PP_EXPR_IIF_I(bit, expr) BOOST_PP_EXPR_IIF_ ## bit(expr) 27 | # 28 | # define BOOST_PP_EXPR_IIF_0(expr) 29 | # define BOOST_PP_EXPR_IIF_1(expr) expr 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/next_prior.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_NEXT_PRIOR_HPP_INCLUDED 3 | #define BOOST_MPL_NEXT_PRIOR_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: next_prior.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | namespace boost { namespace mpl { 22 | 23 | BOOST_MPL_AUX_COMMON_NAME_WKND(next) 24 | BOOST_MPL_AUX_COMMON_NAME_WKND(prior) 25 | 26 | template< 27 | typename BOOST_MPL_AUX_NA_PARAM(T) 28 | > 29 | struct next 30 | { 31 | typedef typename T::next type; 32 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1,next,(T)) 33 | }; 34 | 35 | template< 36 | typename BOOST_MPL_AUX_NA_PARAM(T) 37 | > 38 | struct prior 39 | { 40 | typedef typename T::prior type; 41 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1,prior,(T)) 42 | }; 43 | 44 | BOOST_MPL_AUX_NA_SPEC(1, next) 45 | BOOST_MPL_AUX_NA_SPEC(1, prior) 46 | 47 | }} 48 | 49 | #endif // BOOST_MPL_NEXT_PRIOR_HPP_INCLUDED 50 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/detail/is_binary.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_DETAIL_IS_BINARY_HPP 13 | # define BOOST_PREPROCESSOR_DETAIL_IS_BINARY_HPP 14 | # 15 | # include 16 | # include 17 | # 18 | # /* BOOST_PP_IS_BINARY */ 19 | # 20 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 21 | # define BOOST_PP_IS_BINARY(x) BOOST_PP_CHECK(x, BOOST_PP_IS_BINARY_CHECK) 22 | # else 23 | # define BOOST_PP_IS_BINARY(x) BOOST_PP_IS_BINARY_I(x) 24 | # define BOOST_PP_IS_BINARY_I(x) BOOST_PP_CHECK(x, BOOST_PP_IS_BINARY_CHECK) 25 | # endif 26 | # 27 | # define BOOST_PP_IS_BINARY_CHECK(a, b) 1 28 | # define BOOST_PP_CHECK_RESULT_BOOST_PP_IS_BINARY_CHECK 0, BOOST_PP_NIL 29 | # 30 | # endif 31 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/preprocessor.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_PREPROCESSOR_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_PREPROCESSOR_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: preprocessor.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if !defined(BOOST_MPL_CFG_BROKEN_PP_MACRO_EXPANSION) \ 20 | && ( BOOST_WORKAROUND(__MWERKS__, <= 0x3003) \ 21 | || BOOST_WORKAROUND(__BORLANDC__, < 0x582) \ 22 | || BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \ 23 | ) 24 | 25 | # define BOOST_MPL_CFG_BROKEN_PP_MACRO_EXPANSION 26 | 27 | #endif 28 | 29 | #if !defined(BOOST_MPL_CFG_NO_OWN_PP_PRIMITIVES) 30 | # define BOOST_MPL_CFG_NO_OWN_PP_PRIMITIVES 31 | #endif 32 | 33 | #if !defined(BOOST_NEEDS_TOKEN_PASTING_OP_FOR_TOKENS_JUXTAPOSING) \ 34 | && BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) 35 | # define BOOST_NEEDS_TOKEN_PASTING_OP_FOR_TOKENS_JUXTAPOSING 36 | #endif 37 | 38 | 39 | #endif // BOOST_MPL_AUX_CONFIG_PREPROCESSOR_HPP_INCLUDED 40 | -------------------------------------------------------------------------------- /c_src/boost/boost/concept/usage.hpp: -------------------------------------------------------------------------------- 1 | // Copyright David Abrahams 2006. Distributed under the Boost 2 | // Software License, Version 1.0. (See accompanying 3 | // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 4 | #ifndef BOOST_CONCEPT_USAGE_DWA2006919_HPP 5 | # define BOOST_CONCEPT_USAGE_DWA2006919_HPP 6 | 7 | # include 8 | # include 9 | # include 10 | 11 | namespace boost { namespace concepts { 12 | 13 | # if BOOST_WORKAROUND(__GNUC__, == 2) 14 | 15 | # define BOOST_CONCEPT_USAGE(model) ~model() 16 | 17 | # else 18 | 19 | template 20 | struct usage_requirements 21 | { 22 | ~usage_requirements() { ((Model*)0)->~Model(); } 23 | }; 24 | 25 | # if BOOST_WORKAROUND(__GNUC__, <= 3) 26 | 27 | # define BOOST_CONCEPT_USAGE(model) \ 28 | model(); /* at least 2.96 and 3.4.3 both need this :( */ \ 29 | BOOST_CONCEPT_ASSERT((boost::concepts::usage_requirements)); \ 30 | ~model() 31 | 32 | # else 33 | 34 | # define BOOST_CONCEPT_USAGE(model) \ 35 | BOOST_CONCEPT_ASSERT((boost::concepts::usage_requirements)); \ 36 | ~model() 37 | 38 | # endif 39 | 40 | # endif 41 | 42 | }} // namespace boost::concepts 43 | 44 | #endif // BOOST_CONCEPT_USAGE_DWA2006919_HPP 45 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/array/elem.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_ARRAY_ELEM_HPP 13 | # define BOOST_PREPROCESSOR_ARRAY_ELEM_HPP 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* BOOST_PP_ARRAY_ELEM */ 21 | # 22 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 23 | # define BOOST_PP_ARRAY_ELEM(i, array) BOOST_PP_TUPLE_ELEM(BOOST_PP_ARRAY_SIZE(array), i, BOOST_PP_ARRAY_DATA(array)) 24 | # else 25 | # define BOOST_PP_ARRAY_ELEM(i, array) BOOST_PP_ARRAY_ELEM_I(i, array) 26 | # define BOOST_PP_ARRAY_ELEM_I(i, array) BOOST_PP_TUPLE_ELEM(BOOST_PP_ARRAY_SIZE(array), i, BOOST_PP_ARRAY_DATA(array)) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/ttp.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_TTP_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_TTP_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: ttp.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | #if !defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) \ 22 | && ( defined(BOOST_NO_TEMPLATE_TEMPLATES) \ 23 | || BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT( 0x590) ) \ 24 | ) 25 | 26 | # define BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS 27 | 28 | #endif 29 | 30 | 31 | #if !defined(BOOST_MPL_CFG_EXTENDED_TEMPLATE_PARAMETERS_MATCHING) \ 32 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 33 | && ( BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, BOOST_TESTED_AT(0x0302)) \ 34 | || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \ 35 | ) 36 | 37 | # define BOOST_MPL_CFG_EXTENDED_TEMPLATE_PARAMETERS_MATCHING 38 | 39 | #endif 40 | 41 | #endif // BOOST_MPL_AUX_CONFIG_TTP_HPP_INCLUDED 42 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/arithmetic/mod.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP 15 | # define BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # 21 | # /* BOOST_PP_MOD */ 22 | # 23 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 24 | # define BOOST_PP_MOD(x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE(x, y)) 25 | # else 26 | # define BOOST_PP_MOD(x, y) BOOST_PP_MOD_I(x, y) 27 | # define BOOST_PP_MOD_I(x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE(x, y)) 28 | # endif 29 | # 30 | # /* BOOST_PP_MOD_D */ 31 | # 32 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 33 | # define BOOST_PP_MOD_D(d, x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE_D(d, x, y)) 34 | # else 35 | # define BOOST_PP_MOD_D(d, x, y) BOOST_PP_MOD_D_I(d, x, y) 36 | # define BOOST_PP_MOD_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE_D(d, x, y)) 37 | # endif 38 | # 39 | # endif 40 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/comparison/less_equal.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_COMPARISON_LESS_EQUAL_HPP 15 | # define BOOST_PREPROCESSOR_COMPARISON_LESS_EQUAL_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # 21 | # /* BOOST_PP_LESS_EQUAL */ 22 | # 23 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 24 | # define BOOST_PP_LESS_EQUAL(x, y) BOOST_PP_NOT(BOOST_PP_SUB(x, y)) 25 | # else 26 | # define BOOST_PP_LESS_EQUAL(x, y) BOOST_PP_LESS_EQUAL_I(x, y) 27 | # define BOOST_PP_LESS_EQUAL_I(x, y) BOOST_PP_NOT(BOOST_PP_SUB(x, y)) 28 | # endif 29 | # 30 | # /* BOOST_PP_LESS_EQUAL_D */ 31 | # 32 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 33 | # define BOOST_PP_LESS_EQUAL_D(d, x, y) BOOST_PP_NOT(BOOST_PP_SUB_D(d, x, y)) 34 | # else 35 | # define BOOST_PP_LESS_EQUAL_D(d, x, y) BOOST_PP_LESS_EQUAL_D_I(d, x, y) 36 | # define BOOST_PP_LESS_EQUAL_D_I(d, x, y) BOOST_PP_NOT(BOOST_PP_SUB_D(d, x, y)) 37 | # endif 38 | # 39 | # endif 40 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/logical/compl.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_LOGICAL_COMPL_HPP 13 | # define BOOST_PREPROCESSOR_LOGICAL_COMPL_HPP 14 | # 15 | # include 16 | # 17 | # /* BOOST_PP_COMPL */ 18 | # 19 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 20 | # define BOOST_PP_COMPL(x) BOOST_PP_COMPL_I(x) 21 | # else 22 | # define BOOST_PP_COMPL(x) BOOST_PP_COMPL_OO((x)) 23 | # define BOOST_PP_COMPL_OO(par) BOOST_PP_COMPL_I ## par 24 | # endif 25 | # 26 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() 27 | # define BOOST_PP_COMPL_I(x) BOOST_PP_COMPL_ ## x 28 | # else 29 | # define BOOST_PP_COMPL_I(x) BOOST_PP_COMPL_ID(BOOST_PP_COMPL_ ## x) 30 | # define BOOST_PP_COMPL_ID(id) id 31 | # endif 32 | # 33 | # define BOOST_PP_COMPL_0 1 34 | # define BOOST_PP_COMPL_1 0 35 | # 36 | # endif 37 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/control/iif.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_CONTROL_IIF_HPP 13 | # define BOOST_PREPROCESSOR_CONTROL_IIF_HPP 14 | # 15 | # include 16 | # 17 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 18 | # define BOOST_PP_IIF(bit, t, f) BOOST_PP_IIF_I(bit, t, f) 19 | # else 20 | # define BOOST_PP_IIF(bit, t, f) BOOST_PP_IIF_OO((bit, t, f)) 21 | # define BOOST_PP_IIF_OO(par) BOOST_PP_IIF_I ## par 22 | # endif 23 | # 24 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() 25 | # define BOOST_PP_IIF_I(bit, t, f) BOOST_PP_IIF_ ## bit(t, f) 26 | # else 27 | # define BOOST_PP_IIF_I(bit, t, f) BOOST_PP_IIF_II(BOOST_PP_IIF_ ## bit(t, f)) 28 | # define BOOST_PP_IIF_II(id) id 29 | # endif 30 | # 31 | # define BOOST_PP_IIF_0(t, f) f 32 | # define BOOST_PP_IIF_1(t, f) t 33 | # 34 | # endif 35 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/type_wrapper.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_TYPE_WRAPPER_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_TYPE_WRAPPER_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // Copyright Peter Dimov 2000-2003 7 | // 8 | // Distributed under the Boost Software License, Version 1.0. 9 | // (See accompanying file LICENSE_1_0.txt or copy at 10 | // http://www.boost.org/LICENSE_1_0.txt) 11 | // 12 | // See http://www.boost.org/libs/mpl for documentation. 13 | 14 | // $Id: type_wrapper.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 15 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 16 | // $Revision: 49267 $ 17 | 18 | #include 19 | 20 | namespace boost { namespace mpl { namespace aux { 21 | 22 | template< typename T > struct type_wrapper 23 | { 24 | typedef T type; 25 | }; 26 | 27 | #if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) 28 | // agurt 08/may/03: a complicated way to extract the wrapped type; need it 29 | // mostly for the sake of GCC (3.2.x), which ICEs if you try to extract the 30 | // nested 'type' from 'type_wrapper' when the latter was the result of a 31 | // 'typeof' expression 32 | template< typename T > struct wrapped_type; 33 | 34 | template< typename T > struct wrapped_type< type_wrapper > 35 | { 36 | typedef T type; 37 | }; 38 | #else 39 | template< typename W > struct wrapped_type 40 | { 41 | typedef typename W::type type; 42 | }; 43 | #endif 44 | 45 | }}} 46 | 47 | #endif // BOOST_MPL_AUX_TYPE_WRAPPER_HPP_INCLUDED 48 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/list/fold_right.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP 15 | # define BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # include 21 | # 22 | # if 0 23 | # define BOOST_PP_LIST_FOLD_RIGHT(op, state, list) 24 | # endif 25 | # 26 | # define BOOST_PP_LIST_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_, BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)) 27 | # 28 | # define BOOST_PP_LIST_FOLD_RIGHT_257(o, s, l) BOOST_PP_ERROR(0x0004) 29 | # 30 | # define BOOST_PP_LIST_FOLD_RIGHT_D(d, o, s, l) BOOST_PP_LIST_FOLD_RIGHT_ ## d(o, s, l) 31 | # define BOOST_PP_LIST_FOLD_RIGHT_2ND BOOST_PP_LIST_FOLD_RIGHT 32 | # define BOOST_PP_LIST_FOLD_RIGHT_2ND_D BOOST_PP_LIST_FOLD_RIGHT_D 33 | # 34 | # if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 35 | # include 36 | # else 37 | # include 38 | # endif 39 | # 40 | # endif 41 | -------------------------------------------------------------------------------- /c_src/boost/boost/next_prior.hpp: -------------------------------------------------------------------------------- 1 | // Boost next_prior.hpp header file ---------------------------------------// 2 | 3 | // (C) Copyright Dave Abrahams and Daniel Walker 1999-2003. Distributed under the Boost 4 | // Software License, Version 1.0. (See accompanying file 5 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 | 7 | // See http://www.boost.org/libs/utility for documentation. 8 | 9 | // Revision History 10 | // 13 Dec 2003 Added next(x, n) and prior(x, n) (Daniel Walker) 11 | 12 | #ifndef BOOST_NEXT_PRIOR_HPP_INCLUDED 13 | #define BOOST_NEXT_PRIOR_HPP_INCLUDED 14 | 15 | #include 16 | 17 | namespace boost { 18 | 19 | // Helper functions for classes like bidirectional iterators not supporting 20 | // operator+ and operator- 21 | // 22 | // Usage: 23 | // const std::list::iterator p = get_some_iterator(); 24 | // const std::list::iterator prev = boost::prior(p); 25 | // const std::list::iterator next = boost::next(prev, 2); 26 | 27 | // Contributed by Dave Abrahams 28 | 29 | template 30 | inline T next(T x) { return ++x; } 31 | 32 | template 33 | inline T next(T x, Distance n) 34 | { 35 | std::advance(x, n); 36 | return x; 37 | } 38 | 39 | template 40 | inline T prior(T x) { return --x; } 41 | 42 | template 43 | inline T prior(T x, Distance n) 44 | { 45 | std::advance(x, -n); 46 | return x; 47 | } 48 | 49 | } // namespace boost 50 | 51 | #endif // BOOST_NEXT_PRIOR_HPP_INCLUDED 52 | -------------------------------------------------------------------------------- /README.org: -------------------------------------------------------------------------------- 1 | * basho_metrics 2 | ** Overview 3 | basho_metrics is an open source Erlang library for efficient calculation of service performance metrics. 4 | 5 | basho_metrics is inspired by and provides a subset of the functionality of Coda Hale's 6 | [[https://github.com/codahale/metrics/][Metrics]] package. 7 | 8 | ** Quick Start 9 | You must have [[http://erlang.org/download.html][Erlang/OTP R13B04]] or later and a GNU-style build 10 | system to compile and run =basho_metrics=. 11 | ** Contributing 12 | We encourage contributions to =basho_metrics= from the community. 13 | 14 | 1) Fork the =basho_metrics= repository on [[https://github.com/basho/basho_metrics][Github]]. 15 | 2) Clone your fork or add the remote if you already have a clone of 16 | the repository. 17 | #+BEGIN_SRC shell 18 | git clone git@github.com:yourusername/basho_metrics.git 19 | # or 20 | git remote add mine git@github.com:yourusername/basho_metrics.git 21 | #+END_SRC 22 | 3) Create a topic branch for your change. 23 | #+BEGIN_SRC shell 24 | git checkout -b some-topic-branch 25 | #+END_SRC 26 | 4) Make your change and commit. Use a clear and descriptive commit 27 | message, spanning multiple lines if detailed explanation is 28 | needed. 29 | 5) Push to your fork of the repository and then send a pull-request 30 | through Github. 31 | #+BEGIN_SRC shell 32 | git push mine some-topic-branch 33 | #+END_SRC 34 | 6) A Basho engineer or community maintainer will review your patch 35 | and merge it into the main repository or send you feedback. 36 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/yes_no.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_YES_NO_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_YES_NO_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: yes_no.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | 23 | namespace boost { namespace mpl { namespace aux { 24 | 25 | typedef char (&no_tag)[1]; 26 | typedef char (&yes_tag)[2]; 27 | 28 | template< bool C_ > struct yes_no_tag 29 | { 30 | typedef no_tag type; 31 | }; 32 | 33 | template<> struct yes_no_tag 34 | { 35 | typedef yes_tag type; 36 | }; 37 | 38 | 39 | template< BOOST_MPL_AUX_NTTP_DECL(long, n) > struct weighted_tag 40 | { 41 | #if !BOOST_WORKAROUND(BOOST_MSVC, < 1300) 42 | typedef char (&type)[n]; 43 | #else 44 | char buf[n]; 45 | typedef weighted_tag type; 46 | #endif 47 | }; 48 | 49 | #if defined(BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES) 50 | template<> struct weighted_tag<0> 51 | { 52 | typedef char (&type)[1]; 53 | }; 54 | #endif 55 | 56 | }}} 57 | 58 | #endif // BOOST_MPL_AUX_YES_NO_HPP_INCLUDED 59 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/eti.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_ETI_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_ETI_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: eti.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | // flags for MSVC 6.5's so-called "early template instantiation bug" 21 | #if !defined(BOOST_MPL_CFG_MSVC_60_ETI_BUG) \ 22 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 23 | && BOOST_WORKAROUND(BOOST_MSVC, < 1300) 24 | 25 | # define BOOST_MPL_CFG_MSVC_60_ETI_BUG 26 | 27 | #endif 28 | 29 | #if !defined(BOOST_MPL_CFG_MSVC_70_ETI_BUG) \ 30 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 31 | && BOOST_WORKAROUND(BOOST_MSVC, == 1300) 32 | 33 | # define BOOST_MPL_CFG_MSVC_70_ETI_BUG 34 | 35 | #endif 36 | 37 | #if !defined(BOOST_MPL_CFG_MSVC_ETI_BUG) \ 38 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 39 | && ( defined(BOOST_MPL_CFG_MSVC_60_ETI_BUG) \ 40 | || defined(BOOST_MPL_CFG_MSVC_70_ETI_BUG) \ 41 | ) 42 | 43 | # define BOOST_MPL_CFG_MSVC_ETI_BUG 44 | 45 | #endif 46 | 47 | #endif // BOOST_MPL_AUX_CONFIG_ETI_HPP_INCLUDED 48 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/is_reference.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, 3 | // Howard Hinnant and John Maddock 2000, 2010. 4 | // (C) Copyright Mat Marcus, Jesse Jones and Adobe Systems Inc 2001 5 | 6 | // Use, modification and distribution are subject to the Boost Software License, 7 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 8 | // http://www.boost.org/LICENSE_1_0.txt). 9 | // 10 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 11 | 12 | #ifndef BOOST_TT_IS_REFERENCE_HPP_INCLUDED 13 | #define BOOST_TT_IS_REFERENCE_HPP_INCLUDED 14 | 15 | #include 16 | #include 17 | #include 18 | #include 19 | 20 | // should be the last #include 21 | #include 22 | 23 | namespace boost { 24 | 25 | namespace detail { 26 | 27 | template 28 | struct is_reference_impl 29 | { 30 | BOOST_STATIC_CONSTANT(bool, value = 31 | (::boost::type_traits::ice_or< 32 | ::boost::is_lvalue_reference::value, ::boost::is_rvalue_reference::value 33 | >::value)); 34 | }; 35 | 36 | } // namespace detail 37 | 38 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_reference,T,::boost::detail::is_reference_impl::value) 39 | 40 | } // namespace boost 41 | 42 | #include 43 | 44 | #endif // BOOST_TT_IS_REFERENCE_HPP_INCLUDED 45 | 46 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/lambda_fwd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_LAMBDA_FWD_HPP_INCLUDED 3 | #define BOOST_MPL_LAMBDA_FWD_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: lambda_fwd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | #if !defined(BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT) 22 | 23 | # include 24 | # include 25 | # include 26 | 27 | namespace boost { namespace mpl { 28 | 29 | template< 30 | typename T = na 31 | , typename Tag = void_ 32 | BOOST_MPL_AUX_LAMBDA_ARITY_PARAM( 33 | typename Arity = int_< aux::template_arity::value > 34 | ) 35 | > 36 | struct lambda; 37 | 38 | }} 39 | 40 | #else // BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT 41 | 42 | # include 43 | 44 | namespace boost { namespace mpl { 45 | 46 | template< 47 | typename T = na 48 | , typename Tag = void_ 49 | , typename Protect = true_ 50 | > 51 | struct lambda; 52 | 53 | }} 54 | 55 | #endif 56 | 57 | #endif // BOOST_MPL_LAMBDA_FWD_HPP_INCLUDED 58 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/protect.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_PROTECT_HPP_INCLUDED 3 | #define BOOST_MPL_PROTECT_HPP_INCLUDED 4 | 5 | // Copyright Peter Dimov 2001 6 | // Copyright Aleksey Gurtovoy 2002-2004 7 | // 8 | // Distributed under the Boost Software License, Version 1.0. 9 | // (See accompanying file LICENSE_1_0.txt or copy at 10 | // http://www.boost.org/LICENSE_1_0.txt) 11 | // 12 | // See http://www.boost.org/libs/mpl for documentation. 13 | 14 | // $Id: protect.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 15 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 16 | // $Revision: 49267 $ 17 | 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace boost { namespace mpl { 24 | 25 | template< 26 | typename BOOST_MPL_AUX_NA_PARAM(T) 27 | , int not_le_ = 0 28 | > 29 | struct protect : T 30 | { 31 | #if BOOST_WORKAROUND(__EDG_VERSION__, == 238) 32 | typedef mpl::protect type; 33 | #else 34 | typedef protect type; 35 | #endif 36 | }; 37 | 38 | #if defined(BOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) 39 | namespace aux { 40 | template< BOOST_MPL_AUX_NTTP_DECL(int, N), typename T > 41 | struct arity< protect, N > 42 | : arity 43 | { 44 | }; 45 | } // namespace aux 46 | #endif 47 | 48 | BOOST_MPL_AUX_NA_SPEC_MAIN(1, protect) 49 | #if !defined(BOOST_MPL_CFG_NO_FULL_LAMBDA_SUPPORT) 50 | BOOST_MPL_AUX_NA_SPEC_TEMPLATE_ARITY(1, 1, protect) 51 | #endif 52 | 53 | }} 54 | 55 | #endif // BOOST_MPL_PROTECT_HPP_INCLUDED 56 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/preprocessed/gcc/and.hpp: -------------------------------------------------------------------------------- 1 | 2 | // Copyright Aleksey Gurtovoy 2000-2004 3 | // 4 | // Distributed under the Boost Software License, Version 1.0. 5 | // (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt) 7 | // 8 | 9 | // Preprocessed version of "boost/mpl/and.hpp" header 10 | // -- DO NOT modify by hand! 11 | 12 | namespace boost { namespace mpl { 13 | 14 | namespace aux { 15 | 16 | template< bool C_, typename T1, typename T2, typename T3, typename T4 > 17 | struct and_impl 18 | : false_ 19 | { 20 | }; 21 | 22 | template< typename T1, typename T2, typename T3, typename T4 > 23 | struct and_impl< true,T1,T2,T3,T4 > 24 | : and_impl< 25 | BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value 26 | , T2, T3, T4 27 | , true_ 28 | > 29 | { 30 | }; 31 | 32 | template<> 33 | struct and_impl< 34 | true 35 | , true_, true_, true_, true_ 36 | > 37 | : true_ 38 | { 39 | }; 40 | 41 | } // namespace aux 42 | 43 | template< 44 | typename BOOST_MPL_AUX_NA_PARAM(T1) 45 | , typename BOOST_MPL_AUX_NA_PARAM(T2) 46 | , typename T3 = true_, typename T4 = true_, typename T5 = true_ 47 | > 48 | struct and_ 49 | 50 | : aux::and_impl< 51 | BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value 52 | , T2, T3, T4, T5 53 | > 54 | 55 | { 56 | BOOST_MPL_AUX_LAMBDA_SUPPORT( 57 | 5 58 | , and_ 59 | , ( T1, T2, T3, T4, T5) 60 | ) 61 | }; 62 | 63 | BOOST_MPL_AUX_NA_SPEC2( 64 | 2 65 | , 5 66 | , and_ 67 | ) 68 | 69 | }} 70 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/preprocessed/gcc/or.hpp: -------------------------------------------------------------------------------- 1 | 2 | // Copyright Aleksey Gurtovoy 2000-2004 3 | // 4 | // Distributed under the Boost Software License, Version 1.0. 5 | // (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt) 7 | // 8 | 9 | // Preprocessed version of "boost/mpl/or.hpp" header 10 | // -- DO NOT modify by hand! 11 | 12 | namespace boost { namespace mpl { 13 | 14 | namespace aux { 15 | 16 | template< bool C_, typename T1, typename T2, typename T3, typename T4 > 17 | struct or_impl 18 | : true_ 19 | { 20 | }; 21 | 22 | template< typename T1, typename T2, typename T3, typename T4 > 23 | struct or_impl< false,T1,T2,T3,T4 > 24 | : or_impl< 25 | BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value 26 | , T2, T3, T4 27 | , false_ 28 | > 29 | { 30 | }; 31 | 32 | template<> 33 | struct or_impl< 34 | false 35 | , false_, false_, false_, false_ 36 | > 37 | : false_ 38 | { 39 | }; 40 | 41 | } // namespace aux 42 | 43 | template< 44 | typename BOOST_MPL_AUX_NA_PARAM(T1) 45 | , typename BOOST_MPL_AUX_NA_PARAM(T2) 46 | , typename T3 = false_, typename T4 = false_, typename T5 = false_ 47 | > 48 | struct or_ 49 | 50 | : aux::or_impl< 51 | BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value 52 | , T2, T3, T4, T5 53 | > 54 | 55 | { 56 | BOOST_MPL_AUX_LAMBDA_SUPPORT( 57 | 5 58 | , or_ 59 | , ( T1, T2, T3, T4, T5) 60 | ) 61 | }; 62 | 63 | BOOST_MPL_AUX_NA_SPEC2( 64 | 2 65 | , 5 66 | , or_ 67 | ) 68 | 69 | }} 70 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/logical/bitand.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_LOGICAL_BITAND_HPP 13 | # define BOOST_PREPROCESSOR_LOGICAL_BITAND_HPP 14 | # 15 | # include 16 | # 17 | # /* BOOST_PP_BITAND */ 18 | # 19 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 20 | # define BOOST_PP_BITAND(x, y) BOOST_PP_BITAND_I(x, y) 21 | # else 22 | # define BOOST_PP_BITAND(x, y) BOOST_PP_BITAND_OO((x, y)) 23 | # define BOOST_PP_BITAND_OO(par) BOOST_PP_BITAND_I ## par 24 | # endif 25 | # 26 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() 27 | # define BOOST_PP_BITAND_I(x, y) BOOST_PP_BITAND_ ## x ## y 28 | # else 29 | # define BOOST_PP_BITAND_I(x, y) BOOST_PP_BITAND_ID(BOOST_PP_BITAND_ ## x ## y) 30 | # define BOOST_PP_BITAND_ID(res) res 31 | # endif 32 | # 33 | # define BOOST_PP_BITAND_00 0 34 | # define BOOST_PP_BITAND_01 0 35 | # define BOOST_PP_BITAND_10 0 36 | # define BOOST_PP_BITAND_11 1 37 | # 38 | # endif 39 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/nested_type_wknd.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_NESTED_TYPE_WKND_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_NESTED_TYPE_WKND_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: nested_type_wknd.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | 20 | #if BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, BOOST_TESTED_AT(0x0302)) \ 21 | || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \ 22 | || BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x530)) \ 23 | || BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) 24 | 25 | namespace boost { namespace mpl { namespace aux { 26 | template< typename T > struct nested_type_wknd 27 | : T::type 28 | { 29 | }; 30 | }}} 31 | 32 | #if BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) 33 | # define BOOST_MPL_AUX_NESTED_TYPE_WKND(T) \ 34 | aux::nested_type_wknd \ 35 | /**/ 36 | #else 37 | # define BOOST_MPL_AUX_NESTED_TYPE_WKND(T) \ 38 | ::boost::mpl::aux::nested_type_wknd \ 39 | /**/ 40 | #endif 41 | 42 | #else // !BOOST_MPL_CFG_GCC et al. 43 | 44 | # define BOOST_MPL_AUX_NESTED_TYPE_WKND(T) T::type 45 | 46 | #endif 47 | 48 | #endif // BOOST_MPL_AUX_NESTED_TYPE_WKND_HPP_INCLUDED 49 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/msvc/typeof.hpp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2004 Peder Holt 2 | // Use, modification and distribution is subject to the Boost Software 3 | // License, Version 1.0. (http://www.boost.org/LICENSE_1_0.txt) 4 | 5 | #ifndef BOOST_TYPETRAITS_MSVC_TYPEOF_HPP 6 | #define BOOST_TYPETRAITS_MSVC_TYPEOF_HPP 7 | 8 | #include 9 | #include 10 | 11 | namespace boost { namespace detail { 12 | # if BOOST_WORKAROUND(BOOST_MSVC,==1300) 13 | template 14 | struct msvc_extract_type 15 | { 16 | template 17 | struct id2type_impl; 18 | 19 | typedef id2type_impl id2type; 20 | }; 21 | 22 | template 23 | struct msvc_register_type : public msvc_extract_type 24 | { 25 | template<> 26 | struct id2type_impl //VC7.0 specific bugfeature 27 | { 28 | typedef T type; 29 | }; 30 | }; 31 | # else 32 | template 33 | struct msvc_extract_type 34 | { 35 | struct id2type; 36 | }; 37 | 38 | template 39 | struct msvc_register_type : public msvc_extract_type 40 | { 41 | typedef msvc_extract_type base_type; 42 | struct base_type::id2type // This uses nice VC6.5 and VC7.1 bugfeature 43 | { 44 | typedef T type; 45 | }; 46 | }; 47 | # endif 48 | }} 49 | 50 | #endif //BOOST_TYPETRAITS_MSVC_TYPEOF_IMPL_HPP 51 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/list/reverse.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_LIST_REVERSE_HPP 15 | # define BOOST_PREPROCESSOR_LIST_REVERSE_HPP 16 | # 17 | # include 18 | # include 19 | # 20 | # /* BOOST_PP_LIST_REVERSE */ 21 | # 22 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 23 | # define BOOST_PP_LIST_REVERSE(list) BOOST_PP_LIST_FOLD_LEFT(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) 24 | # else 25 | # define BOOST_PP_LIST_REVERSE(list) BOOST_PP_LIST_REVERSE_I(list) 26 | # define BOOST_PP_LIST_REVERSE_I(list) BOOST_PP_LIST_FOLD_LEFT(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) 27 | # endif 28 | # 29 | # define BOOST_PP_LIST_REVERSE_O(d, s, x) (x, s) 30 | # 31 | # /* BOOST_PP_LIST_REVERSE_D */ 32 | # 33 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 34 | # define BOOST_PP_LIST_REVERSE_D(d, list) BOOST_PP_LIST_FOLD_LEFT_ ## d(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) 35 | # else 36 | # define BOOST_PP_LIST_REVERSE_D(d, list) BOOST_PP_LIST_REVERSE_D_I(d, list) 37 | # define BOOST_PP_LIST_REVERSE_D_I(d, list) BOOST_PP_LIST_FOLD_LEFT_ ## d(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) 38 | # endif 39 | # 40 | # endif 41 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/include_preprocessed.hpp: -------------------------------------------------------------------------------- 1 | 2 | // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION 3 | 4 | // Copyright Aleksey Gurtovoy 2000-2006 5 | // 6 | // Distributed under the Boost Software License, Version 1.0. 7 | // (See accompanying file LICENSE_1_0.txt or copy at 8 | // http://www.boost.org/LICENSE_1_0.txt) 9 | // 10 | // See http://www.boost.org/libs/mpl for documentation. 11 | 12 | // $Id: include_preprocessed.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 13 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 14 | // $Revision: 49267 $ 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | #if !defined(BOOST_NEEDS_TOKEN_PASTING_OP_FOR_TOKENS_JUXTAPOSING) 23 | # define AUX778076_PREPROCESSED_HEADER \ 24 | BOOST_MPL_CFG_COMPILER_DIR/BOOST_MPL_PREPROCESSED_HEADER \ 25 | /**/ 26 | #else 27 | # define AUX778076_PREPROCESSED_HEADER \ 28 | BOOST_PP_CAT(BOOST_MPL_CFG_COMPILER_DIR,/)##BOOST_MPL_PREPROCESSED_HEADER \ 29 | /**/ 30 | #endif 31 | 32 | #if BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(700)) 33 | # define AUX778076_INCLUDE_STRING BOOST_PP_STRINGIZE(boost/mpl/aux_/preprocessed/AUX778076_PREPROCESSED_HEADER) 34 | # include AUX778076_INCLUDE_STRING 35 | # undef AUX778076_INCLUDE_STRING 36 | #else 37 | # include BOOST_PP_STRINGIZE(boost/mpl/aux_/preprocessed/AUX778076_PREPROCESSED_HEADER) 38 | #endif 39 | 40 | # undef AUX778076_PREPROCESSED_HEADER 41 | 42 | #undef BOOST_MPL_PREPROCESSED_HEADER 43 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp: -------------------------------------------------------------------------------- 1 | 2 | // Copyright Aleksey Gurtovoy 2000-2004 3 | // 4 | // Distributed under the Boost Software License, Version 1.0. 5 | // (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt) 7 | // 8 | 9 | // Preprocessed version of "boost/mpl/apply_wrap.hpp" header 10 | // -- DO NOT modify by hand! 11 | 12 | namespace boost { namespace mpl { 13 | 14 | template< 15 | typename F 16 | 17 | , typename has_apply_ = typename aux::has_apply::type 18 | 19 | > 20 | struct apply_wrap0 21 | 22 | : F::template apply< > 23 | { 24 | }; 25 | 26 | template< typename F > 27 | struct apply_wrap0< F,true_ > 28 | : F::apply 29 | { 30 | }; 31 | 32 | template< 33 | typename F, typename T1 34 | 35 | > 36 | struct apply_wrap1 37 | 38 | : F::template apply 39 | { 40 | }; 41 | 42 | template< 43 | typename F, typename T1, typename T2 44 | 45 | > 46 | struct apply_wrap2 47 | 48 | : F::template apply< T1,T2 > 49 | { 50 | }; 51 | 52 | template< 53 | typename F, typename T1, typename T2, typename T3 54 | 55 | > 56 | struct apply_wrap3 57 | 58 | : F::template apply< T1,T2,T3 > 59 | { 60 | }; 61 | 62 | template< 63 | typename F, typename T1, typename T2, typename T3, typename T4 64 | 65 | > 66 | struct apply_wrap4 67 | 68 | : F::template apply< T1,T2,T3,T4 > 69 | { 70 | }; 71 | 72 | template< 73 | typename F, typename T1, typename T2, typename T3, typename T4 74 | , typename T5 75 | 76 | > 77 | struct apply_wrap5 78 | 79 | : F::template apply< T1,T2,T3,T4,T5 > 80 | { 81 | }; 82 | 83 | }} 84 | 85 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/platform/cygwin.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2001 - 2003. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | // See http://www.boost.org for most recent version. 7 | 8 | // cygwin specific config options: 9 | 10 | #define BOOST_PLATFORM "Cygwin" 11 | #define BOOST_HAS_DIRENT_H 12 | #define BOOST_HAS_LOG1P 13 | #define BOOST_HAS_EXPM1 14 | 15 | // 16 | // Threading API: 17 | // See if we have POSIX threads, if we do use them, otherwise 18 | // revert to native Win threads. 19 | #define BOOST_HAS_UNISTD_H 20 | #include 21 | #if defined(_POSIX_THREADS) && (_POSIX_THREADS+0 >= 0) && !defined(BOOST_HAS_WINTHREADS) 22 | # define BOOST_HAS_PTHREADS 23 | # define BOOST_HAS_SCHED_YIELD 24 | # define BOOST_HAS_GETTIMEOFDAY 25 | # define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE 26 | # define BOOST_HAS_SIGACTION 27 | #else 28 | # if !defined(BOOST_HAS_WINTHREADS) 29 | # define BOOST_HAS_WINTHREADS 30 | # endif 31 | # define BOOST_HAS_FTIME 32 | #endif 33 | 34 | // 35 | // find out if we have a stdint.h, there should be a better way to do this: 36 | // 37 | #include 38 | #ifdef _STDINT_H 39 | #define BOOST_HAS_STDINT_H 40 | #endif 41 | 42 | /// Cygwin has no fenv.h 43 | #define BOOST_NO_FENV_H 44 | 45 | // boilerplate code: 46 | #include 47 | 48 | // 49 | // Cygwin lies about XSI conformance, there is no nl_types.h: 50 | // 51 | #ifdef BOOST_HAS_NL_TYPES_H 52 | # undef BOOST_HAS_NL_TYPES_H 53 | #endif 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/integral_constant.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2005. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | #ifndef BOOST_TYPE_TRAITS_INTEGRAL_CONSTANT_HPP 7 | #define BOOST_TYPE_TRAITS_INTEGRAL_CONSTANT_HPP 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | namespace boost{ 14 | 15 | #if defined(BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS) || defined(__BORLANDC__) 16 | template 17 | #else 18 | template 19 | #endif 20 | struct integral_constant : public mpl::integral_c 21 | { 22 | typedef integral_constant type; 23 | }; 24 | 25 | template<> struct integral_constant : public mpl::true_ 26 | { 27 | #if BOOST_WORKAROUND(BOOST_MSVC, < 1300) 28 | # pragma warning(push) 29 | # pragma warning(disable:4097) 30 | typedef mpl::true_ base_; 31 | using base_::value; 32 | # pragma warning(pop) 33 | #endif 34 | typedef integral_constant type; 35 | }; 36 | template<> struct integral_constant : public mpl::false_ 37 | { 38 | #if BOOST_WORKAROUND(BOOST_MSVC, < 1300) 39 | # pragma warning(push) 40 | # pragma warning(disable:4097) 41 | typedef mpl::false_ base_; 42 | using base_::value; 43 | # pragma warning(pop) 44 | #endif 45 | typedef integral_constant type; 46 | }; 47 | 48 | typedef integral_constant true_type; 49 | typedef integral_constant false_type; 50 | 51 | } 52 | 53 | #endif 54 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/add_const.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, Howard 3 | // Hinnant & John Maddock 2000. 4 | // Use, modification and distribution are subject to the Boost Software License, 5 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt). 7 | // 8 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 9 | 10 | #ifndef BOOST_TT_ADD_CONST_HPP_INCLUDED 11 | #define BOOST_TT_ADD_CONST_HPP_INCLUDED 12 | 13 | #include 14 | 15 | // should be the last #include 16 | #include 17 | 18 | namespace boost { 19 | 20 | // * convert a type T to const type - add_const 21 | // this is not required since the result is always 22 | // the same as "T const", but it does suppress warnings 23 | // from some compilers: 24 | 25 | #if defined(BOOST_MSVC) 26 | // This bogus warning will appear when add_const is applied to a 27 | // const volatile reference because we can't detect const volatile 28 | // references with MSVC6. 29 | # pragma warning(push) 30 | # pragma warning(disable:4181) // warning C4181: qualifier applied to reference type ignored 31 | #endif 32 | 33 | BOOST_TT_AUX_TYPE_TRAIT_DEF1(add_const,T,T const) 34 | 35 | #if defined(BOOST_MSVC) 36 | # pragma warning(pop) 37 | #endif 38 | 39 | #ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION 40 | BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(typename T,add_const,T&,T&) 41 | #endif 42 | 43 | } // namespace boost 44 | 45 | #include 46 | 47 | #endif // BOOST_TT_ADD_CONST_HPP_INCLUDED 48 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/adl.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_ADL_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_ADL_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: adl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | // agurt, 25/apr/04: technically, the ADL workaround is only needed for GCC, 23 | // but putting everything expect public, user-specializable metafunctions into 24 | // a separate global namespace has a nice side effect of reducing the length 25 | // of template instantiation symbols, so we apply the workaround on all 26 | // platforms that can handle it 27 | 28 | #if !defined(BOOST_MPL_CFG_NO_ADL_BARRIER_NAMESPACE) \ 29 | && ( BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400)) \ 30 | || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \ 31 | || BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) \ 32 | || BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3202)) \ 33 | || BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, BOOST_TESTED_AT(810)) \ 34 | ) 35 | 36 | # define BOOST_MPL_CFG_NO_ADL_BARRIER_NAMESPACE 37 | 38 | #endif 39 | 40 | #endif // BOOST_MPL_AUX_CONFIG_ADL_HPP_INCLUDED 41 | -------------------------------------------------------------------------------- /c_src/boost/boost/iterator/interoperable.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright David Abrahams 2002. 2 | // (C) Copyright Jeremy Siek 2002. 3 | // (C) Copyright Thomas Witt 2002. 4 | // Distributed under the Boost Software License, Version 1.0. (See 5 | // accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt) 7 | #ifndef BOOST_INTEROPERABLE_23022003THW_HPP 8 | # define BOOST_INTEROPERABLE_23022003THW_HPP 9 | 10 | # include 11 | # include 12 | 13 | # include 14 | 15 | # include // must appear last 16 | 17 | namespace boost 18 | { 19 | 20 | // 21 | // Meta function that determines whether two 22 | // iterator types are considered interoperable. 23 | // 24 | // Two iterator types A,B are considered interoperable if either 25 | // A is convertible to B or vice versa. 26 | // This interoperability definition is in sync with the 27 | // standards requirements on constant/mutable container 28 | // iterators (23.1 [lib.container.requirements]). 29 | // 30 | // For compilers that don't support is_convertible 31 | // is_interoperable gives false positives. See comments 32 | // on operator implementation for consequences. 33 | // 34 | template 35 | struct is_interoperable 36 | # ifdef BOOST_NO_STRICT_ITERATOR_INTEROPERABILITY 37 | : mpl::true_ 38 | # else 39 | : mpl::or_< 40 | is_convertible< A, B > 41 | , is_convertible< B, A > > 42 | # endif 43 | { 44 | }; 45 | 46 | } // namespace boost 47 | 48 | # include 49 | 50 | #endif // BOOST_INTEROPERABLE_23022003THW_HPP 51 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/add_volatile.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, Howard 3 | // Hinnant & John Maddock 2000. 4 | // Use, modification and distribution are subject to the Boost Software License, 5 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt). 7 | // 8 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 9 | 10 | #ifndef BOOST_TT_ADD_VOLATILE_HPP_INCLUDED 11 | #define BOOST_TT_ADD_VOLATILE_HPP_INCLUDED 12 | 13 | #include 14 | 15 | // should be the last #include 16 | #include 17 | 18 | namespace boost { 19 | 20 | // * convert a type T to volatile type - add_volatile 21 | // this is not required since the result is always 22 | // the same as "T volatile", but it does suppress warnings 23 | // from some compilers: 24 | 25 | #if defined(BOOST_MSVC) 26 | // This bogus warning will appear when add_volatile is applied to a 27 | // const volatile reference because we can't detect const volatile 28 | // references with MSVC6. 29 | # pragma warning(push) 30 | # pragma warning(disable:4181) // warning C4181: qualifier applied to reference type ignored 31 | #endif 32 | 33 | BOOST_TT_AUX_TYPE_TRAIT_DEF1(add_volatile,T,T volatile) 34 | 35 | #if defined(BOOST_MSVC) 36 | # pragma warning(pop) 37 | #endif 38 | 39 | #ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION 40 | BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(typename T,add_volatile,T&,T&) 41 | #endif 42 | 43 | } // namespace boost 44 | 45 | #include 46 | 47 | #endif // BOOST_TT_ADD_VOLATILE_HPP_INCLUDED 48 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/debug/error.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_DEBUG_ERROR_HPP 13 | # define BOOST_PREPROCESSOR_DEBUG_ERROR_HPP 14 | # 15 | # include 16 | # include 17 | # 18 | # /* BOOST_PP_ERROR */ 19 | # 20 | # if BOOST_PP_CONFIG_ERRORS 21 | # define BOOST_PP_ERROR(code) BOOST_PP_CAT(BOOST_PP_ERROR_, code) 22 | # endif 23 | # 24 | # define BOOST_PP_ERROR_0x0000 BOOST_PP_ERROR(0x0000, BOOST_PP_INDEX_OUT_OF_BOUNDS) 25 | # define BOOST_PP_ERROR_0x0001 BOOST_PP_ERROR(0x0001, BOOST_PP_WHILE_OVERFLOW) 26 | # define BOOST_PP_ERROR_0x0002 BOOST_PP_ERROR(0x0002, BOOST_PP_FOR_OVERFLOW) 27 | # define BOOST_PP_ERROR_0x0003 BOOST_PP_ERROR(0x0003, BOOST_PP_REPEAT_OVERFLOW) 28 | # define BOOST_PP_ERROR_0x0004 BOOST_PP_ERROR(0x0004, BOOST_PP_LIST_FOLD_OVERFLOW) 29 | # define BOOST_PP_ERROR_0x0005 BOOST_PP_ERROR(0x0005, BOOST_PP_SEQ_FOLD_OVERFLOW) 30 | # define BOOST_PP_ERROR_0x0006 BOOST_PP_ERROR(0x0006, BOOST_PP_ARITHMETIC_OVERFLOW) 31 | # define BOOST_PP_ERROR_0x0007 BOOST_PP_ERROR(0x0007, BOOST_PP_DIVISION_BY_ZERO) 32 | # 33 | # endif 34 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/is_arithmetic.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_IS_ARITHMETIC_HPP_INCLUDED 10 | #define BOOST_TT_IS_ARITHMETIC_HPP_INCLUDED 11 | 12 | #if !defined( __CODEGEARC__ ) 13 | #include 14 | #include 15 | #include 16 | #include 17 | #endif 18 | 19 | // should be the last #include 20 | #include 21 | 22 | namespace boost { 23 | 24 | #if !defined(__CODEGEARC__) 25 | namespace detail { 26 | 27 | template< typename T > 28 | struct is_arithmetic_impl 29 | { 30 | BOOST_STATIC_CONSTANT(bool, value = 31 | (::boost::type_traits::ice_or< 32 | ::boost::is_integral::value, 33 | ::boost::is_float::value 34 | >::value)); 35 | }; 36 | 37 | } // namespace detail 38 | #endif 39 | 40 | //* is a type T an arithmetic type described in the standard (3.9.1p8) 41 | #if defined(__CODEGEARC__) 42 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_arithmetic,T,__is_arithmetic(T)) 43 | #else 44 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_arithmetic,T,::boost::detail::is_arithmetic_impl::value) 45 | #endif 46 | 47 | } // namespace boost 48 | 49 | #include 50 | 51 | #endif // BOOST_TT_IS_ARITHMETIC_HPP_INCLUDED 52 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/msvc/remove_bounds.hpp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2004 Peder Holt 2 | // Use, modification and distribution is subject to the Boost Software 3 | // License, Version 1.0. (http://www.boost.org/LICENSE_1_0.txt) 4 | 5 | #ifndef BOOST_TYPE_TRAITS_MSVC_REMOVE_BOUNDS_HOLT_2004_0827 6 | #define BOOST_TYPE_TRAITS_MSVC_REMOVE_BOUNDS_HOLT_2004_0827 7 | 8 | #include 9 | #include 10 | 11 | namespace boost { 12 | namespace detail { 13 | template 14 | struct remove_bounds_impl_typeof { 15 | template 16 | struct inner { 17 | typedef T type; 18 | }; 19 | }; 20 | template<> 21 | struct remove_bounds_impl_typeof { 22 | template 23 | struct inner { 24 | template 25 | static msvc_register_type test(U[]); 26 | static msvc_register_type test(...); 27 | BOOST_STATIC_CONSTANT(unsigned,register_test=sizeof(test( *((T*)NULL) ) )); 28 | typedef typename msvc_extract_type::id2type::type type; 29 | }; 30 | }; 31 | } //namespace detail 32 | 33 | template 34 | struct remove_bounds { 35 | typedef typename boost::detail::remove_bounds_impl_typeof< 36 | boost::is_array::value 37 | >::template inner >::type type; 38 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1,remove_bounds,T) 39 | }; 40 | } //namespace boost 41 | 42 | #endif //BOOST_TYPE_TRAITS_MSVC_REMOVE_BOUNDS_HOLT_2004_0827 43 | 44 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/repetition/enum_params.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_HPP 15 | # define BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # 21 | # /* BOOST_PP_ENUM_PARAMS */ 22 | # 23 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 24 | # define BOOST_PP_ENUM_PARAMS(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_PARAMS_M, param) 25 | # else 26 | # define BOOST_PP_ENUM_PARAMS(count, param) BOOST_PP_ENUM_PARAMS_I(count, param) 27 | # define BOOST_PP_ENUM_PARAMS_I(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_PARAMS_M, param) 28 | # endif 29 | # 30 | # define BOOST_PP_ENUM_PARAMS_M(z, n, param) BOOST_PP_COMMA_IF(n) param ## n 31 | # 32 | # /* BOOST_PP_ENUM_PARAMS_Z */ 33 | # 34 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 35 | # define BOOST_PP_ENUM_PARAMS_Z(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_PARAMS_M, param) 36 | # else 37 | # define BOOST_PP_ENUM_PARAMS_Z(z, count, param) BOOST_PP_ENUM_PARAMS_Z_I(z, count, param) 38 | # define BOOST_PP_ENUM_PARAMS_Z_I(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_PARAMS_M, param) 39 | # endif 40 | # 41 | # endif 42 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/is_stateless.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_IS_STATELESS_HPP_INCLUDED 10 | #define BOOST_TT_IS_STATELESS_HPP_INCLUDED 11 | 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | 20 | // should be the last #include 21 | #include 22 | 23 | namespace boost { 24 | 25 | namespace detail { 26 | 27 | template 28 | struct is_stateless_impl 29 | { 30 | BOOST_STATIC_CONSTANT(bool, value = 31 | (::boost::type_traits::ice_and< 32 | ::boost::has_trivial_constructor::value, 33 | ::boost::has_trivial_copy::value, 34 | ::boost::has_trivial_destructor::value, 35 | ::boost::is_class::value, 36 | ::boost::is_empty::value 37 | >::value)); 38 | }; 39 | 40 | } // namespace detail 41 | 42 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_stateless,T,::boost::detail::is_stateless_impl::value) 43 | 44 | } // namespace boost 45 | 46 | #include 47 | 48 | #endif // BOOST_TT_IS_STATELESS_HPP_INCLUDED 49 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/msvc/remove_reference.hpp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2004 Peder Holt 2 | // Use, modification and distribution is subject to the Boost Software 3 | // License, Version 1.0. (http://www.boost.org/LICENSE_1_0.txt) 4 | 5 | #ifndef BOOST_TYPE_TRAITS_MSVC_REMOVE_REFERENCE_HOLT_2004_0827 6 | #define BOOST_TYPE_TRAITS_MSVC_REMOVE_REFERENCE_HOLT_2004_0827 7 | 8 | #include 9 | #include 10 | 11 | namespace boost { 12 | namespace detail { 13 | template 14 | struct remove_reference_impl_typeof { 15 | template 16 | struct inner { 17 | typedef T type; 18 | }; 19 | }; 20 | template<> 21 | struct remove_reference_impl_typeof { 22 | template 23 | struct inner { 24 | template 25 | static msvc_register_type test(U&(*)()); 26 | static msvc_register_type test(...); 27 | BOOST_STATIC_CONSTANT(unsigned,register_test=sizeof(test( (T(*)())(NULL) ) )); 28 | typedef typename msvc_extract_type::id2type::type type; 29 | }; 30 | }; 31 | } //namespace detail 32 | 33 | template 34 | struct remove_reference { 35 | typedef typename boost::detail::remove_reference_impl_typeof< 36 | boost::is_reference::value 37 | >::template inner >::type type; 38 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1,remove_reference,T) 39 | }; 40 | } //namespace boost 41 | 42 | #endif //BOOST_TYPE_TRAITS_MSVC_REMOVE_REFERENCE_HOLT_2004_0827 43 | -------------------------------------------------------------------------------- /c_src/boost/boost/current_function.hpp: -------------------------------------------------------------------------------- 1 | #ifndef BOOST_CURRENT_FUNCTION_HPP_INCLUDED 2 | #define BOOST_CURRENT_FUNCTION_HPP_INCLUDED 3 | 4 | // MS compatible compilers support #pragma once 5 | 6 | #if defined(_MSC_VER) && (_MSC_VER >= 1020) 7 | # pragma once 8 | #endif 9 | 10 | // 11 | // boost/current_function.hpp - BOOST_CURRENT_FUNCTION 12 | // 13 | // Copyright (c) 2002 Peter Dimov and Multi Media Ltd. 14 | // 15 | // Distributed under the Boost Software License, Version 1.0. (See 16 | // accompanying file LICENSE_1_0.txt or copy at 17 | // http://www.boost.org/LICENSE_1_0.txt) 18 | // 19 | // http://www.boost.org/libs/utility/current_function.html 20 | // 21 | 22 | namespace boost 23 | { 24 | 25 | namespace detail 26 | { 27 | 28 | inline void current_function_helper() 29 | { 30 | 31 | #if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) 32 | 33 | # define BOOST_CURRENT_FUNCTION __PRETTY_FUNCTION__ 34 | 35 | #elif defined(__DMC__) && (__DMC__ >= 0x810) 36 | 37 | # define BOOST_CURRENT_FUNCTION __PRETTY_FUNCTION__ 38 | 39 | #elif defined(__FUNCSIG__) 40 | 41 | # define BOOST_CURRENT_FUNCTION __FUNCSIG__ 42 | 43 | #elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && (__IBMCPP__ >= 500)) 44 | 45 | # define BOOST_CURRENT_FUNCTION __FUNCTION__ 46 | 47 | #elif defined(__BORLANDC__) && (__BORLANDC__ >= 0x550) 48 | 49 | # define BOOST_CURRENT_FUNCTION __FUNC__ 50 | 51 | #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901) 52 | 53 | # define BOOST_CURRENT_FUNCTION __func__ 54 | 55 | #else 56 | 57 | # define BOOST_CURRENT_FUNCTION "(unknown)" 58 | 59 | #endif 60 | 61 | } 62 | 63 | } // namespace detail 64 | 65 | } // namespace boost 66 | 67 | #endif // #ifndef BOOST_CURRENT_FUNCTION_HPP_INCLUDED 68 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/has_trivial_constructor.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_HAS_TRIVIAL_CONSTRUCTOR_HPP_INCLUDED 10 | #define BOOST_TT_HAS_TRIVIAL_CONSTRUCTOR_HPP_INCLUDED 11 | 12 | #include 13 | #include 14 | #include 15 | #include 16 | 17 | // should be the last #include 18 | #include 19 | 20 | namespace boost { 21 | 22 | namespace detail { 23 | 24 | template 25 | struct has_trivial_ctor_impl 26 | { 27 | #ifdef BOOST_HAS_TRIVIAL_CONSTRUCTOR 28 | BOOST_STATIC_CONSTANT(bool, value = 29 | (::boost::type_traits::ice_or< 30 | ::boost::is_pod::value, 31 | BOOST_HAS_TRIVIAL_CONSTRUCTOR(T) 32 | >::value)); 33 | #else 34 | BOOST_STATIC_CONSTANT(bool, value = 35 | (::boost::type_traits::ice_or< 36 | ::boost::is_pod::value, 37 | false 38 | >::value)); 39 | #endif 40 | }; 41 | 42 | } // namespace detail 43 | 44 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(has_trivial_constructor,T,::boost::detail::has_trivial_ctor_impl::value) 45 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(has_trivial_default_constructor,T,::boost::detail::has_trivial_ctor_impl::value) 46 | 47 | } // namespace boost 48 | 49 | #include 50 | 51 | #endif // BOOST_TT_HAS_TRIVIAL_CONSTRUCTOR_HPP_INCLUDED 52 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/integral_c.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_INTEGRAL_C_HPP_INCLUDED 3 | #define BOOST_MPL_INTEGRAL_C_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2006 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: integral_c.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | #if BOOST_WORKAROUND(__HP_aCC, <= 53800) 23 | // the type of non-type template arguments may not depend on template arguments 24 | # define AUX_WRAPPER_PARAMS(N) typename T, long N 25 | #else 26 | # define AUX_WRAPPER_PARAMS(N) typename T, T N 27 | #endif 28 | 29 | #define AUX_WRAPPER_NAME integral_c 30 | #define AUX_WRAPPER_VALUE_TYPE T 31 | #define AUX_WRAPPER_INST(value) AUX_WRAPPER_NAME< T, value > 32 | #include 33 | 34 | 35 | #if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \ 36 | && !BOOST_WORKAROUND(__BORLANDC__, <= 0x551) 37 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 38 | // 'bool' constant doesn't have 'next'/'prior' members 39 | template< bool C > 40 | struct integral_c 41 | { 42 | BOOST_STATIC_CONSTANT(bool, value = C); 43 | typedef integral_c_tag tag; 44 | typedef integral_c type; 45 | typedef bool value_type; 46 | operator bool() const { return this->value; } 47 | }; 48 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 49 | #endif 50 | 51 | #endif // BOOST_MPL_INTEGRAL_C_HPP_INCLUDED 52 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/is_union.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, Howard 3 | // Hinnant & John Maddock 2000. 4 | // Use, modification and distribution are subject to the Boost Software License, 5 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 6 | // http://www.boost.org/LICENSE_1_0.txt). 7 | // 8 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 9 | 10 | 11 | #ifndef BOOST_TT_IS_UNION_HPP_INCLUDED 12 | #define BOOST_TT_IS_UNION_HPP_INCLUDED 13 | 14 | #include 15 | #include 16 | #include 17 | 18 | // should be the last #include 19 | #include 20 | 21 | namespace boost { 22 | 23 | namespace detail { 24 | #ifndef __GNUC__ 25 | template struct is_union_impl 26 | { 27 | typedef typename remove_cv::type cvt; 28 | #ifdef BOOST_IS_UNION 29 | BOOST_STATIC_CONSTANT(bool, value = BOOST_IS_UNION(cvt)); 30 | #else 31 | BOOST_STATIC_CONSTANT(bool, value = false); 32 | #endif 33 | }; 34 | #else 35 | // 36 | // using remove_cv here generates a whole load of needless 37 | // warnings with gcc, since it doesn't do any good with gcc 38 | // in any case (at least at present), just remove it: 39 | // 40 | template struct is_union_impl 41 | { 42 | #ifdef BOOST_IS_UNION 43 | BOOST_STATIC_CONSTANT(bool, value = BOOST_IS_UNION(T)); 44 | #else 45 | BOOST_STATIC_CONSTANT(bool, value = false); 46 | #endif 47 | }; 48 | #endif 49 | } // namespace detail 50 | 51 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_union,T,::boost::detail::is_union_impl::value) 52 | 53 | } // namespace boost 54 | 55 | #include 56 | 57 | #endif // BOOST_TT_IS_UNION_HPP_INCLUDED 58 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/has_trivial_destructor.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_HAS_TRIVIAL_DESTRUCTOR_HPP_INCLUDED 10 | #define BOOST_TT_HAS_TRIVIAL_DESTRUCTOR_HPP_INCLUDED 11 | 12 | #include 13 | #include 14 | #include 15 | #include 16 | 17 | // should be the last #include 18 | #include 19 | 20 | namespace boost { 21 | 22 | namespace detail { 23 | 24 | template 25 | struct has_trivial_dtor_impl 26 | { 27 | #ifdef BOOST_HAS_TRIVIAL_DESTRUCTOR 28 | BOOST_STATIC_CONSTANT(bool, value = BOOST_HAS_TRIVIAL_DESTRUCTOR(T)); 29 | #else 30 | BOOST_STATIC_CONSTANT(bool, value = ::boost::is_pod::value); 31 | #endif 32 | }; 33 | 34 | } // namespace detail 35 | 36 | BOOST_TT_AUX_BOOL_TRAIT_DEF1(has_trivial_destructor,T,::boost::detail::has_trivial_dtor_impl::value) 37 | 38 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(has_trivial_destructor,void,false) 39 | #ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS 40 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(has_trivial_destructor,void const,false) 41 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(has_trivial_destructor,void const volatile,false) 42 | BOOST_TT_AUX_BOOL_TRAIT_SPEC1(has_trivial_destructor,void volatile,false) 43 | #endif 44 | 45 | } // namespace boost 46 | 47 | #include 48 | 49 | #endif // BOOST_TT_HAS_TRIVIAL_DESTRUCTOR_HPP_INCLUDED 50 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/seq/seq.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_SEQ_SEQ_HPP 13 | # define BOOST_PREPROCESSOR_SEQ_SEQ_HPP 14 | # 15 | # include 16 | # include 17 | # 18 | # /* BOOST_PP_SEQ_HEAD */ 19 | # 20 | # define BOOST_PP_SEQ_HEAD(seq) BOOST_PP_SEQ_ELEM(0, seq) 21 | # 22 | # /* BOOST_PP_SEQ_TAIL */ 23 | # 24 | # if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 25 | # define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_1((seq)) 26 | # define BOOST_PP_SEQ_TAIL_1(par) BOOST_PP_SEQ_TAIL_2 ## par 27 | # define BOOST_PP_SEQ_TAIL_2(seq) BOOST_PP_SEQ_TAIL_I ## seq 28 | # elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() 29 | # define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_ID(BOOST_PP_SEQ_TAIL_I seq) 30 | # define BOOST_PP_SEQ_TAIL_ID(id) id 31 | # elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 32 | # define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_D(seq) 33 | # define BOOST_PP_SEQ_TAIL_D(seq) BOOST_PP_SEQ_TAIL_I seq 34 | # else 35 | # define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_I seq 36 | # endif 37 | # 38 | # define BOOST_PP_SEQ_TAIL_I(x) 39 | # 40 | # /* BOOST_PP_SEQ_NIL */ 41 | # 42 | # define BOOST_PP_SEQ_NIL(x) (x) 43 | # 44 | # endif 45 | -------------------------------------------------------------------------------- /c_src/boost/boost/concept/detail/has_constraints.hpp: -------------------------------------------------------------------------------- 1 | // Copyright David Abrahams 2006. Distributed under the Boost 2 | // Software License, Version 1.0. (See accompanying 3 | // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 4 | #ifndef BOOST_CONCEPT_DETAIL_HAS_CONSTRAINTS_DWA2006429_HPP 5 | # define BOOST_CONCEPT_DETAIL_HAS_CONSTRAINTS_DWA2006429_HPP 6 | 7 | # include 8 | # include 9 | # include 10 | 11 | namespace boost { namespace concepts { 12 | 13 | namespace detail 14 | { 15 | 16 | // Here we implement the metafunction that detects whether a 17 | // constraints metafunction exists 18 | typedef char yes; 19 | typedef char (&no)[2]; 20 | 21 | template 22 | struct wrap_constraints {}; 23 | 24 | #if BOOST_WORKAROUND(__SUNPRO_CC, <= 0x580) || defined(__CUDACC__) 25 | // Work around the following bogus error in Sun Studio 11, by 26 | // turning off the has_constraints function entirely: 27 | // Error: complex expression not allowed in dependent template 28 | // argument expression 29 | inline no has_constraints_(...); 30 | #else 31 | template 32 | inline yes has_constraints_(Model*, wrap_constraints* = 0); 33 | inline no has_constraints_(...); 34 | #endif 35 | } 36 | 37 | // This would be called "detail::has_constraints," but it has a strong 38 | // tendency to show up in error messages. 39 | template 40 | struct not_satisfied 41 | { 42 | BOOST_STATIC_CONSTANT( 43 | bool 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); 45 | typedef mpl::bool_ type; 46 | }; 47 | 48 | }} // namespace boost::concepts::detail 49 | 50 | #endif // BOOST_CONCEPT_DETAIL_HAS_CONSTRAINTS_DWA2006429_HPP 51 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/config/dtp.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_CONFIG_DTP_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_CONFIG_DTP_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: dtp.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | // MWCW 7.x-8.0 "losts" default template parameters of nested class 20 | // templates when their owner classes are passed as arguments to other 21 | // templates; Borland 5.5.1 "forgets" them from the very beginning (if 22 | // the owner class is a class template), and Borland 5.6 isn't even 23 | // able to compile a definition of nested class template with DTP 24 | 25 | #if !defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \ 26 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 27 | && BOOST_WORKAROUND(__BORLANDC__, >= 0x560) \ 28 | && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) 29 | 30 | # define BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES 31 | 32 | #endif 33 | 34 | 35 | #if !defined(BOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \ 36 | && !defined(BOOST_MPL_PREPROCESSING_MODE) \ 37 | && ( BOOST_WORKAROUND(__MWERKS__, <= 0x3001) \ 38 | || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \ 39 | || defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \ 40 | ) 41 | 42 | # define BOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES 43 | 44 | #endif 45 | 46 | #endif // BOOST_MPL_AUX_CONFIG_DTP_HPP_INCLUDED 47 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/adl_barrier.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_ADL_BARRIER_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_ADL_BARRIER_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2002-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: adl_barrier.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | 21 | #if !defined(BOOST_MPL_CFG_NO_ADL_BARRIER_NAMESPACE) 22 | 23 | # define BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE mpl_ 24 | # define BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN namespace mpl_ { 25 | # define BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE } 26 | # define BOOST_MPL_AUX_ADL_BARRIER_DECL(type) \ 27 | namespace boost { namespace mpl { \ 28 | using ::BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE::type; \ 29 | } } \ 30 | /**/ 31 | 32 | #if !defined(BOOST_MPL_PREPROCESSING_MODE) 33 | namespace BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE { namespace aux {} } 34 | namespace boost { namespace mpl { using namespace BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE; 35 | namespace aux { using namespace BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE::aux; } 36 | }} 37 | #endif 38 | 39 | #else // BOOST_MPL_CFG_NO_ADL_BARRIER_NAMESPACE 40 | 41 | # define BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE boost::mpl 42 | # define BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN namespace boost { namespace mpl { 43 | # define BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE }} 44 | # define BOOST_MPL_AUX_ADL_BARRIER_DECL(type) /**/ 45 | 46 | #endif 47 | 48 | #endif // BOOST_MPL_AUX_ADL_BARRIER_HPP_INCLUDED 49 | -------------------------------------------------------------------------------- /c_src/basho_metrics_nifs.h: -------------------------------------------------------------------------------- 1 | // ------------------------------------------------------------------- 2 | // 3 | // basho_metrics: fast performance metrics for erlang 4 | // 5 | // inspired and partially derived from Coda Hale's 'metrics' 6 | // Copyright (c) 2010-2001 Coda Hale 7 | // https://github.com/codahale/metrics/blob/development/LICENSE.md 8 | // 9 | // Copyright (c) 2011 Basho Technologies, Inc. All Rights Reserved. 10 | // 11 | // This file is provided to you under the Apache License, 12 | // Version 2.0 (the "License"); you may not use this file 13 | // except in compliance with the License. You may obtain 14 | // a copy of the License at 15 | // 16 | // http://www.apache.org/licenses/LICENSE-2.0 17 | // 18 | // Unless required by applicable law or agreed to in writing, 19 | // software distributed under the License is distributed on an 20 | // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 21 | // KIND, either express or implied. See the License for the 22 | // specific language governing permissions and limitations 23 | // under the License. 24 | // 25 | // ------------------------------------------------------------------- 26 | #ifndef BASHO_METRICS_NIFS_H_ 27 | #define BASHO_METRICS_NIFS_H_ 28 | 29 | extern "C" { 30 | 31 | #include "erl_nif_compat.h" 32 | 33 | ERL_NIF_TERM histogram_update(ErlNifEnv*, int, const ERL_NIF_TERM[]); 34 | ERL_NIF_TERM histogram_new(ErlNifEnv*, int, const ERL_NIF_TERM[]); 35 | ERL_NIF_TERM histogram_stats(ErlNifEnv*, int, const ERL_NIF_TERM[]); 36 | ERL_NIF_TERM histogram_clear(ErlNifEnv*, int, const ERL_NIF_TERM[]); 37 | 38 | ERL_NIF_TERM meter_new(ErlNifEnv*, int, const ERL_NIF_TERM[]); 39 | ERL_NIF_TERM meter_update(ErlNifEnv*, int, const ERL_NIF_TERM[]); 40 | ERL_NIF_TERM meter_tick(ErlNifEnv*,int, const ERL_NIF_TERM[]); 41 | ERL_NIF_TERM meter_stats(ErlNifEnv*, int, const ERL_NIF_TERM[]); 42 | 43 | } // extern "C" 44 | 45 | #endif // include guard 46 | -------------------------------------------------------------------------------- /c_src/boost/boost/checked_delete.hpp: -------------------------------------------------------------------------------- 1 | #ifndef BOOST_CHECKED_DELETE_HPP_INCLUDED 2 | #define BOOST_CHECKED_DELETE_HPP_INCLUDED 3 | 4 | // MS compatible compilers support #pragma once 5 | 6 | #if defined(_MSC_VER) && (_MSC_VER >= 1020) 7 | # pragma once 8 | #endif 9 | 10 | // 11 | // boost/checked_delete.hpp 12 | // 13 | // Copyright (c) 2002, 2003 Peter Dimov 14 | // Copyright (c) 2003 Daniel Frey 15 | // Copyright (c) 2003 Howard Hinnant 16 | // 17 | // Distributed under the Boost Software License, Version 1.0. (See 18 | // accompanying file LICENSE_1_0.txt or copy at 19 | // http://www.boost.org/LICENSE_1_0.txt) 20 | // 21 | // See http://www.boost.org/libs/utility/checked_delete.html for documentation. 22 | // 23 | 24 | namespace boost 25 | { 26 | 27 | // verify that types are complete for increased safety 28 | 29 | template inline void checked_delete(T * x) 30 | { 31 | // intentionally complex - simplification causes regressions 32 | typedef char type_must_be_complete[ sizeof(T)? 1: -1 ]; 33 | (void) sizeof(type_must_be_complete); 34 | delete x; 35 | } 36 | 37 | template inline void checked_array_delete(T * x) 38 | { 39 | typedef char type_must_be_complete[ sizeof(T)? 1: -1 ]; 40 | (void) sizeof(type_must_be_complete); 41 | delete [] x; 42 | } 43 | 44 | template struct checked_deleter 45 | { 46 | typedef void result_type; 47 | typedef T * argument_type; 48 | 49 | void operator()(T * x) const 50 | { 51 | // boost:: disables ADL 52 | boost::checked_delete(x); 53 | } 54 | }; 55 | 56 | template struct checked_array_deleter 57 | { 58 | typedef void result_type; 59 | typedef T * argument_type; 60 | 61 | void operator()(T * x) const 62 | { 63 | boost::checked_array_delete(x); 64 | } 65 | }; 66 | 67 | } // namespace boost 68 | 69 | #endif // #ifndef BOOST_CHECKED_DELETE_HPP_INCLUDED 70 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/compiler/comeau.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2001. 2 | // (C) Copyright Douglas Gregor 2001. 3 | // (C) Copyright Peter Dimov 2001. 4 | // (C) Copyright Aleksey Gurtovoy 2003. 5 | // (C) Copyright Beman Dawes 2003. 6 | // (C) Copyright Jens Maurer 2003. 7 | // Use, modification and distribution are subject to the 8 | // Boost Software License, Version 1.0. (See accompanying file 9 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 10 | 11 | // See http://www.boost.org for most recent version. 12 | 13 | // Comeau C++ compiler setup: 14 | 15 | #include "boost/config/compiler/common_edg.hpp" 16 | 17 | #if (__COMO_VERSION__ <= 4245) 18 | 19 | # if defined(_MSC_VER) && _MSC_VER <= 1300 20 | # if _MSC_VER > 100 21 | // only set this in non-strict mode: 22 | # define BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP 23 | # endif 24 | # endif 25 | 26 | // Void returns don't work when emulating VC 6 (Peter Dimov) 27 | // TODO: look up if this doesn't apply to the whole 12xx range 28 | # if defined(_MSC_VER) && (_MSC_VER < 1300) 29 | # define BOOST_NO_VOID_RETURNS 30 | # endif 31 | 32 | #endif // version 4245 33 | 34 | // 35 | // enable __int64 support in VC emulation mode 36 | // 37 | # if defined(_MSC_VER) && (_MSC_VER >= 1200) 38 | # define BOOST_HAS_MS_INT64 39 | # endif 40 | 41 | #define BOOST_COMPILER "Comeau compiler version " BOOST_STRINGIZE(__COMO_VERSION__) 42 | 43 | // 44 | // versions check: 45 | // we don't know Comeau prior to version 4245: 46 | #if __COMO_VERSION__ < 4245 47 | # error "Compiler not configured - please reconfigure" 48 | #endif 49 | // 50 | // last known and checked version is 4245: 51 | #if (__COMO_VERSION__ > 4245) 52 | # if defined(BOOST_ASSERT_CONFIG) 53 | # error "Unknown compiler version - please run the configure tests and report the results" 54 | # endif 55 | #endif 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/detail/type_trait_def.hpp: -------------------------------------------------------------------------------- 1 | 2 | // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION 3 | 4 | // Copyright Aleksey Gurtovoy 2002-2004 5 | // 6 | // Distributed under the Boost Software License, Version 1.0. 7 | // (See accompanying file LICENSE_1_0.txt or copy at 8 | // http://www.boost.org/LICENSE_1_0.txt) 9 | 10 | // $Source$ 11 | // $Date: 2011-04-25 08:26:48 -0400 (Mon, 25 Apr 2011) $ 12 | // $Revision: 71481 $ 13 | 14 | #include 15 | #include 16 | 17 | #define BOOST_TT_AUX_TYPE_TRAIT_DEF1(trait,T,result) \ 18 | template< typename T > struct trait \ 19 | { \ 20 | public:\ 21 | typedef result type; \ 22 | BOOST_MPL_AUX_LAMBDA_SUPPORT(1,trait,(T)) \ 23 | }; \ 24 | \ 25 | BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(1,trait) \ 26 | /**/ 27 | 28 | #define BOOST_TT_AUX_TYPE_TRAIT_SPEC1(trait,spec,result) \ 29 | template<> struct trait \ 30 | { \ 31 | public:\ 32 | typedef result type; \ 33 | BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(1,trait,(spec)) \ 34 | }; \ 35 | /**/ 36 | 37 | #define BOOST_TT_AUX_TYPE_TRAIT_IMPL_SPEC1(trait,spec,result) \ 38 | template<> struct trait##_impl \ 39 | { \ 40 | public:\ 41 | typedef result type; \ 42 | }; \ 43 | /**/ 44 | 45 | #define BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(param,trait,spec,result) \ 46 | template< param > struct trait \ 47 | { \ 48 | public:\ 49 | typedef result type; \ 50 | }; \ 51 | /**/ 52 | 53 | #define BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_2(param1,param2,trait,spec,result) \ 54 | template< param1, param2 > struct trait \ 55 | { \ 56 | public:\ 57 | typedef result; \ 58 | }; \ 59 | /**/ 60 | 61 | #define BOOST_TT_AUX_TYPE_TRAIT_IMPL_PARTIAL_SPEC1_1(param,trait,spec,result) \ 62 | template< param > struct trait##_impl \ 63 | { \ 64 | public:\ 65 | typedef result type; \ 66 | }; \ 67 | /**/ 68 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/and.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AND_HPP_INCLUDED 3 | #define BOOST_MPL_AND_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: and.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \ 20 | && !defined(BOOST_MPL_PREPROCESSING_MODE) 21 | 22 | # include 23 | # include 24 | # include 25 | # include 26 | 27 | // agurt, 19/may/04: workaround a conflict with header's 28 | // 'or' and 'and' macros, see http://tinyurl.com/3et69; 'defined(and)' 29 | // has to be checked in a separate condition, otherwise GCC complains 30 | // about 'and' being an alternative token 31 | #if defined(_MSC_VER) 32 | #ifndef __GCCXML__ 33 | #if defined(and) 34 | # pragma push_macro("and") 35 | # undef and 36 | # define and(x) 37 | #endif 38 | #endif 39 | #endif 40 | 41 | # define BOOST_MPL_PREPROCESSED_HEADER and.hpp 42 | # include 43 | 44 | #if defined(_MSC_VER) 45 | #ifndef __GCCXML__ 46 | #if defined(and) 47 | # pragma pop_macro("and") 48 | #endif 49 | #endif 50 | #endif 51 | 52 | #else 53 | 54 | # define AUX778076_OP_NAME and_ 55 | # define AUX778076_OP_VALUE1 false 56 | # define AUX778076_OP_VALUE2 true 57 | # include 58 | 59 | #endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS 60 | #endif // BOOST_MPL_AND_HPP_INCLUDED 61 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/or.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_OR_HPP_INCLUDED 3 | #define BOOST_MPL_OR_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: or.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | #if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \ 20 | && !defined(BOOST_MPL_PREPROCESSING_MODE) 21 | 22 | # include 23 | # include 24 | # include 25 | # include 26 | # include 27 | 28 | // agurt, 19/may/04: workaround a conflict with header's 29 | // 'or' and 'and' macros, see http://tinyurl.com/3et69; 'defined(or)' 30 | // has to be checked in a separate condition, otherwise GCC complains 31 | // about 'or' being an alternative token 32 | #if defined(_MSC_VER) 33 | #ifndef __GCCXML__ 34 | #if defined(or) 35 | # pragma push_macro("or") 36 | # undef or 37 | # define or(x) 38 | #endif 39 | #endif 40 | #endif 41 | 42 | # define BOOST_MPL_PREPROCESSED_HEADER or.hpp 43 | # include 44 | 45 | #if defined(_MSC_VER) 46 | #ifndef __GCCXML__ 47 | #if defined(or) 48 | # pragma pop_macro("or") 49 | #endif 50 | #endif 51 | #endif 52 | 53 | #else 54 | 55 | # define AUX778076_OP_NAME or_ 56 | # define AUX778076_OP_VALUE1 true 57 | # define AUX778076_OP_VALUE2 false 58 | # include 59 | 60 | #endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS 61 | #endif // BOOST_MPL_OR_HPP_INCLUDED 62 | -------------------------------------------------------------------------------- /c_src/boost/boost/type_traits/add_pointer.hpp: -------------------------------------------------------------------------------- 1 | 2 | // (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. 3 | // Use, modification and distribution are subject to the Boost Software License, 4 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 | // http://www.boost.org/LICENSE_1_0.txt). 6 | // 7 | // See http://www.boost.org/libs/type_traits for most recent version including documentation. 8 | 9 | #ifndef BOOST_TT_ADD_POINTER_HPP_INCLUDED 10 | #define BOOST_TT_ADD_POINTER_HPP_INCLUDED 11 | 12 | #include 13 | 14 | // should be the last #include 15 | #include 16 | 17 | namespace boost { 18 | 19 | namespace detail { 20 | 21 | #if defined(__BORLANDC__) && (__BORLANDC__ < 0x5A0) 22 | // 23 | // For some reason this implementation stops Borlands compiler 24 | // from dropping cv-qualifiers, it still fails with references 25 | // to arrays for some reason though (shrug...) (JM 20021104) 26 | // 27 | template 28 | struct add_pointer_impl 29 | { 30 | typedef T* type; 31 | }; 32 | template 33 | struct add_pointer_impl 34 | { 35 | typedef T* type; 36 | }; 37 | template 38 | struct add_pointer_impl 39 | { 40 | typedef T* type; 41 | }; 42 | template 43 | struct add_pointer_impl 44 | { 45 | typedef T* type; 46 | }; 47 | template 48 | struct add_pointer_impl 49 | { 50 | typedef T* type; 51 | }; 52 | 53 | #else 54 | 55 | template 56 | struct add_pointer_impl 57 | { 58 | typedef typename remove_reference::type no_ref_type; 59 | typedef no_ref_type* type; 60 | }; 61 | 62 | #endif 63 | 64 | } // namespace detail 65 | 66 | BOOST_TT_AUX_TYPE_TRAIT_DEF1(add_pointer,T,typename boost::detail::add_pointer_impl::type) 67 | 68 | } // namespace boost 69 | 70 | #include 71 | 72 | #endif // BOOST_TT_ADD_POINTER_HPP_INCLUDED 73 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/arithmetic/sub.hpp: -------------------------------------------------------------------------------- 1 | # /* Copyright (C) 2001 2 | # * Housemarque Oy 3 | # * http://www.housemarque.com 4 | # * 5 | # * Distributed under the Boost Software License, Version 1.0. (See 6 | # * accompanying file LICENSE_1_0.txt or copy at 7 | # * http://www.boost.org/LICENSE_1_0.txt) 8 | # */ 9 | # 10 | # /* Revised by Paul Mensonides (2002) */ 11 | # 12 | # /* See http://www.boost.org for most recent version. */ 13 | # 14 | # ifndef BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP 15 | # define BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP 16 | # 17 | # include 18 | # include 19 | # include 20 | # include 21 | # 22 | # /* BOOST_PP_SUB */ 23 | # 24 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 25 | # define BOOST_PP_SUB(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) 26 | # else 27 | # define BOOST_PP_SUB(x, y) BOOST_PP_SUB_I(x, y) 28 | # define BOOST_PP_SUB_I(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) 29 | # endif 30 | # 31 | # define BOOST_PP_SUB_P(d, xy) BOOST_PP_TUPLE_ELEM(2, 1, xy) 32 | # 33 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() 34 | # define BOOST_PP_SUB_O(d, xy) BOOST_PP_SUB_O_I xy 35 | # else 36 | # define BOOST_PP_SUB_O(d, xy) BOOST_PP_SUB_O_I(BOOST_PP_TUPLE_ELEM(2, 0, xy), BOOST_PP_TUPLE_ELEM(2, 1, xy)) 37 | # endif 38 | # 39 | # define BOOST_PP_SUB_O_I(x, y) (BOOST_PP_DEC(x), BOOST_PP_DEC(y)) 40 | # 41 | # /* BOOST_PP_SUB_D */ 42 | # 43 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 44 | # define BOOST_PP_SUB_D(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) 45 | # else 46 | # define BOOST_PP_SUB_D(d, x, y) BOOST_PP_SUB_D_I(d, x, y) 47 | # define BOOST_PP_SUB_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) 48 | # endif 49 | # 50 | # endif 51 | -------------------------------------------------------------------------------- /c_src/boost/boost/preprocessor/repetition/enum_trailing_params.hpp: -------------------------------------------------------------------------------- 1 | # /* ************************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2002. 4 | # * Distributed under the Boost Software License, Version 1.0. (See 5 | # * accompanying file LICENSE_1_0.txt or copy at 6 | # * http://www.boost.org/LICENSE_1_0.txt) 7 | # * * 8 | # ************************************************************************** */ 9 | # 10 | # /* See http://www.boost.org for most recent version. */ 11 | # 12 | # ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_PARAMS_HPP 13 | # define BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_PARAMS_HPP 14 | # 15 | # include 16 | # include 17 | # 18 | # /* BOOST_PP_ENUM_TRAILING_PARAMS */ 19 | # 20 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 21 | # define BOOST_PP_ENUM_TRAILING_PARAMS(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) 22 | # else 23 | # define BOOST_PP_ENUM_TRAILING_PARAMS(count, param) BOOST_PP_ENUM_TRAILING_PARAMS_I(count, param) 24 | # define BOOST_PP_ENUM_TRAILING_PARAMS_I(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) 25 | # endif 26 | # 27 | # define BOOST_PP_ENUM_TRAILING_PARAMS_M(z, n, param) , param ## n 28 | # 29 | # /* BOOST_PP_ENUM_TRAILING_PARAMS_Z */ 30 | # 31 | # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 32 | # define BOOST_PP_ENUM_TRAILING_PARAMS_Z(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) 33 | # else 34 | # define BOOST_PP_ENUM_TRAILING_PARAMS_Z(z, count, param) BOOST_PP_ENUM_TRAILING_PARAMS_Z_I(z, count, param) 35 | # define BOOST_PP_ENUM_TRAILING_PARAMS_Z_I(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) 36 | # endif 37 | # 38 | # endif 39 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/aux_/preprocessor/enum.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_AUX_PREPROCESSOR_ENUM_HPP_INCLUDED 3 | #define BOOST_MPL_AUX_PREPROCESSOR_ENUM_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2000-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: enum.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | 19 | // BOOST_MPL_PP_ENUM(0,int): 20 | // BOOST_MPL_PP_ENUM(1,int): int 21 | // BOOST_MPL_PP_ENUM(2,int): int, int 22 | // BOOST_MPL_PP_ENUM(n,int): int, int, .., int 23 | 24 | #if !defined(BOOST_MPL_CFG_NO_OWN_PP_PRIMITIVES) 25 | 26 | # include 27 | 28 | # define BOOST_MPL_PP_ENUM(n, param) \ 29 | BOOST_PP_CAT(BOOST_MPL_PP_ENUM_,n)(param) \ 30 | /**/ 31 | 32 | # define BOOST_MPL_PP_ENUM_0(p) 33 | # define BOOST_MPL_PP_ENUM_1(p) p 34 | # define BOOST_MPL_PP_ENUM_2(p) p,p 35 | # define BOOST_MPL_PP_ENUM_3(p) p,p,p 36 | # define BOOST_MPL_PP_ENUM_4(p) p,p,p,p 37 | # define BOOST_MPL_PP_ENUM_5(p) p,p,p,p,p 38 | # define BOOST_MPL_PP_ENUM_6(p) p,p,p,p,p,p 39 | # define BOOST_MPL_PP_ENUM_7(p) p,p,p,p,p,p,p 40 | # define BOOST_MPL_PP_ENUM_8(p) p,p,p,p,p,p,p,p 41 | # define BOOST_MPL_PP_ENUM_9(p) p,p,p,p,p,p,p,p,p 42 | 43 | #else 44 | 45 | # include 46 | # include 47 | 48 | # define BOOST_MPL_PP_AUX_ENUM_FUNC(unused, i, param) \ 49 | BOOST_PP_COMMA_IF(i) param \ 50 | /**/ 51 | 52 | # define BOOST_MPL_PP_ENUM(n, param) \ 53 | BOOST_PP_REPEAT( \ 54 | n \ 55 | , BOOST_MPL_PP_AUX_ENUM_FUNC \ 56 | , param \ 57 | ) \ 58 | /**/ 59 | 60 | #endif 61 | 62 | #endif // BOOST_MPL_AUX_PREPROCESSOR_ENUM_HPP_INCLUDED 63 | -------------------------------------------------------------------------------- /c_src/boost/boost/mpl/void.hpp: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BOOST_MPL_VOID_HPP_INCLUDED 3 | #define BOOST_MPL_VOID_HPP_INCLUDED 4 | 5 | // Copyright Aleksey Gurtovoy 2001-2004 6 | // 7 | // Distributed under the Boost Software License, Version 1.0. 8 | // (See accompanying file LICENSE_1_0.txt or copy at 9 | // http://www.boost.org/LICENSE_1_0.txt) 10 | // 11 | // See http://www.boost.org/libs/mpl for documentation. 12 | 13 | // $Id: void.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ 14 | // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ 15 | // $Revision: 49267 $ 16 | 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN 24 | 25 | // [JDG Feb-4-2003] made void_ a complete type to allow it to be 26 | // instantiated so that it can be passed in as an object that can be 27 | // used to select an overloaded function. Possible use includes signaling 28 | // a zero arity functor evaluation call. 29 | struct void_ { typedef void_ type; }; 30 | 31 | BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE 32 | 33 | namespace boost { namespace mpl { 34 | 35 | template< typename T > 36 | struct is_void_ 37 | : false_ 38 | { 39 | #if BOOST_WORKAROUND(BOOST_MSVC, < 1300) 40 | using false_::value; 41 | #endif 42 | }; 43 | 44 | template<> 45 | struct is_void_ 46 | : true_ 47 | { 48 | #if BOOST_WORKAROUND(BOOST_MSVC, < 1300) 49 | using true_::value; 50 | #endif 51 | }; 52 | 53 | template< typename T > 54 | struct is_not_void_ 55 | : true_ 56 | { 57 | #if BOOST_WORKAROUND(BOOST_MSVC, < 1300) 58 | using true_::value; 59 | #endif 60 | }; 61 | 62 | template<> 63 | struct is_not_void_ 64 | : false_ 65 | { 66 | #if BOOST_WORKAROUND(BOOST_MSVC, < 1300) 67 | using false_::value; 68 | #endif 69 | }; 70 | 71 | BOOST_MPL_AUX_NA_SPEC(1, is_void_) 72 | BOOST_MPL_AUX_NA_SPEC(1, is_not_void_) 73 | 74 | }} 75 | 76 | #endif // BOOST_MPL_VOID_HPP_INCLUDED 77 | -------------------------------------------------------------------------------- /c_src/boost/boost/concept/assert.hpp: -------------------------------------------------------------------------------- 1 | // Copyright David Abrahams 2006. Distributed under the Boost 2 | // Software License, Version 1.0. (See accompanying 3 | // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 4 | #ifndef BOOST_CONCEPT_ASSERT_DWA2006430_HPP 5 | # define BOOST_CONCEPT_ASSERT_DWA2006430_HPP 6 | 7 | # include 8 | # include 9 | 10 | // The old protocol used a constraints() member function in concept 11 | // checking classes. If the compiler supports SFINAE, we can detect 12 | // that function and seamlessly support the old concept checking 13 | // classes. In this release, backward compatibility with the old 14 | // concept checking classes is enabled by default, where available. 15 | // The old protocol is deprecated, though, and backward compatibility 16 | // will no longer be the default in the next release. 17 | 18 | # if !defined(BOOST_NO_OLD_CONCEPT_SUPPORT) \ 19 | && !defined(BOOST_NO_SFINAE) \ 20 | \ 21 | && !(BOOST_WORKAROUND(__GNUC__, == 3) && BOOST_WORKAROUND(__GNUC_MINOR__, < 4)) \ 22 | && !(BOOST_WORKAROUND(__GNUC__, == 2)) 23 | 24 | // Note: gcc-2.96 through 3.3.x have some SFINAE, but no ability to 25 | // check for the presence of particularmember functions. 26 | 27 | # define BOOST_OLD_CONCEPT_SUPPORT 28 | 29 | # endif 30 | 31 | # ifdef BOOST_MSVC 32 | # include 33 | # elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) 34 | # include 35 | # else 36 | # include 37 | # endif 38 | 39 | // Usage, in class or function context: 40 | // 41 | // BOOST_CONCEPT_ASSERT((UnaryFunctionConcept)); 42 | // 43 | # define BOOST_CONCEPT_ASSERT(ModelInParens) \ 44 | BOOST_CONCEPT_ASSERT_FN(void(*)ModelInParens) 45 | 46 | #endif // BOOST_CONCEPT_ASSERT_DWA2006430_HPP 47 | -------------------------------------------------------------------------------- /c_src/boost/boost/config/compiler/gcc_xml.hpp: -------------------------------------------------------------------------------- 1 | // (C) Copyright John Maddock 2006. 2 | // Use, modification and distribution are subject to the 3 | // Boost Software License, Version 1.0. (See accompanying file 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 | 6 | // See http://www.boost.org for most recent version. 7 | 8 | // GCC-XML C++ compiler setup: 9 | 10 | # if !defined(__GCCXML_GNUC__) || ((__GCCXML_GNUC__ <= 3) && (__GCCXML_GNUC_MINOR__ <= 3)) 11 | # define BOOST_NO_IS_ABSTRACT 12 | # endif 13 | 14 | // 15 | // Threading support: Turn this on unconditionally here (except for 16 | // those platforms where we can know for sure). It will get turned off again 17 | // later if no threading API is detected. 18 | // 19 | #if !defined(__MINGW32__) && !defined(_MSC_VER) && !defined(linux) && !defined(__linux) && !defined(__linux__) 20 | # define BOOST_HAS_THREADS 21 | #endif 22 | 23 | // 24 | // gcc has "long long" 25 | // 26 | #define BOOST_HAS_LONG_LONG 27 | 28 | // C++0x features: 29 | // 30 | # define BOOST_NO_CONSTEXPR 31 | # define BOOST_NO_NULLPTR 32 | # define BOOST_NO_TEMPLATE_ALIASES 33 | # define BOOST_NO_DECLTYPE 34 | # define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS 35 | # define BOOST_NO_RVALUE_REFERENCES 36 | # define BOOST_NO_STATIC_ASSERT 37 | # define BOOST_NO_VARIADIC_TEMPLATES 38 | # define BOOST_NO_VARIADIC_MACROS 39 | # define BOOST_NO_AUTO_DECLARATIONS 40 | # define BOOST_NO_AUTO_MULTIDECLARATIONS 41 | # define BOOST_NO_CHAR16_T 42 | # define BOOST_NO_CHAR32_T 43 | # define BOOST_NO_DEFAULTED_FUNCTIONS 44 | # define BOOST_NO_DELETED_FUNCTIONS 45 | # define BOOST_NO_INITIALIZER_LISTS 46 | # define BOOST_NO_SCOPED_ENUMS 47 | # define BOOST_NO_SFINAE_EXPR 48 | # define BOOST_NO_SCOPED_ENUMS 49 | # define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS 50 | # define BOOST_NO_LAMBDAS 51 | # define BOOST_NO_RAW_LITERALS 52 | # define BOOST_NO_UNICODE_LITERALS 53 | # define BOOST_NO_NOEXCEPT 54 | #define BOOST_NO_UNIFIED_INITIALIZATION_SYNTAX 55 | 56 | #define BOOST_COMPILER "GCC-XML C++ version " __GCCXML__ 57 | 58 | 59 | --------------------------------------------------------------------------------