| /*============================================================================== |
| Copyright (c) 2005-2010 Joel de Guzman |
| Copyright (c) 2010 Thomas Heller |
| |
| 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 <typename F, typename A0> |
| struct function<F, A0> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1> |
| struct function<F, A0 , A1> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2> |
| struct function<F, A0 , A1 , A2> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3> |
| struct function<F, A0 , A1 , A2 , A3> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4> |
| struct function<F, A0 , A1 , A2 , A3 , A4> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 |
| > |
| {}; |
| |
| |
| |
| |
| |
| |
| |
| template <typename F, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29> |
| struct function<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29> |
| : proto::result_of::make_expr< |
| proto::tag::function |
| , phoenix_domain |
| , F |
| , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 |
| > |
| {}; |