Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:50:24

0001     ///////////////////////////////////////////////////////////////////////////////
0002     // memfun_funop.hpp
0003     // Contains overloads of memfun::operator().
0004     //
0005     //  Copyright 2008 Eric Niebler. Distributed under the Boost
0006     //  Software License, Version 1.0. (See accompanying file
0007     //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0008     template<typename A0>
0009     BOOST_FORCEINLINE
0010     result_type operator()(A0 const &a0) const
0011     {
0012         BOOST_PROTO_USE_GET_POINTER();
0013         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0);
0014     }
0015     template<typename A0 , typename A1>
0016     BOOST_FORCEINLINE
0017     result_type operator()(A0 const &a0 , A1 const &a1) const
0018     {
0019         BOOST_PROTO_USE_GET_POINTER();
0020         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1);
0021     }
0022     template<typename A0 , typename A1 , typename A2>
0023     BOOST_FORCEINLINE
0024     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2) const
0025     {
0026         BOOST_PROTO_USE_GET_POINTER();
0027         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2);
0028     }
0029     template<typename A0 , typename A1 , typename A2 , typename A3>
0030     BOOST_FORCEINLINE
0031     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) const
0032     {
0033         BOOST_PROTO_USE_GET_POINTER();
0034         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3);
0035     }
0036     template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
0037     BOOST_FORCEINLINE
0038     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4) const
0039     {
0040         BOOST_PROTO_USE_GET_POINTER();
0041         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4);
0042     }
0043     template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
0044     BOOST_FORCEINLINE
0045     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) const
0046     {
0047         BOOST_PROTO_USE_GET_POINTER();
0048         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5);
0049     }
0050     template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
0051     BOOST_FORCEINLINE
0052     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) const
0053     {
0054         BOOST_PROTO_USE_GET_POINTER();
0055         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5 , a6);
0056     }
0057     template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
0058     BOOST_FORCEINLINE
0059     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) const
0060     {
0061         BOOST_PROTO_USE_GET_POINTER();
0062         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
0063     }
0064     template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
0065     BOOST_FORCEINLINE
0066     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) const
0067     {
0068         BOOST_PROTO_USE_GET_POINTER();
0069         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
0070     }
0071     template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
0072     BOOST_FORCEINLINE
0073     result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8 , A9 const &a9) const
0074     {
0075         BOOST_PROTO_USE_GET_POINTER();
0076         return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9);
0077     }