/////////////////////////////////////////////////////////////////////////////// // poly_function_traits.hpp // Contains specializations of poly_function_traits and as_mono_function // // Copyright 2008 Eric Niebler. Distributed under the Boost // Software License, Version 1.0. (See accompanying file // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {}; template struct poly_function_traits > { typedef typename PolyFun::template impl function_type; typedef typename function_type::result_type result_type; }; template struct as_mono_function_impl { typedef typename PolyFun::template impl type; }; template struct as_mono_function_impl { typedef PolyFun type; }; template struct as_mono_function : as_mono_function_impl::value> {};