• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 
2 #if !defined(BOOST_PHOENIX_DONT_USE_PREPROCESSED_FILES)
3 #ifndef BOOST_PHOENIX_OBJECT_DETAIL_NEW_HPP
4 #define BOOST_PHOENIX_OBJECT_DETAIL_NEW_HPP
5 
6 #include <boost/phoenix/object/detail/cpp03/preprocessed/new.hpp>
7 
8 #endif
9 #else
10 
11 #if !BOOST_PHOENIX_IS_ITERATING
12 
13 #ifndef BOOST_PHOENIX_OBJECT_DETAIL_NEW_HPP
14 #define BOOST_PHOENIX_OBJECT_DETAIL_NEW_HPP
15 
16 #if defined(__WAVE__) && defined(BOOST_PHOENIX_CREATE_PREPROCESSED_FILES)
17 #pragma wave option(preserve: 2, line: 0, output: "preprocessed/new_" BOOST_PHOENIX_LIMIT_STR ".hpp")
18 #endif
19 
20 /*==============================================================================
21     Copyright (c) 2005-2010 Joel de Guzman
22     Copyright (c) 2010 Thomas Heller
23 
24     Distributed under the Boost Software License, Version 1.0. (See accompanying
25     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
26 ==============================================================================*/
27 
28 #if defined(__WAVE__) && defined(BOOST_PHOENIX_CREATE_PREPROCESSED_FILES)
29 #pragma wave option(preserve: 1)
30 #endif
31 
32 #define BOOST_PHOENIX_ITERATION_PARAMS                                                \
33     (3, (1, BOOST_PHOENIX_COMPOSITE_LIMIT,                                            \
34     <boost/phoenix/object/detail/cpp03/new.hpp>))
35 #include BOOST_PHOENIX_ITERATE()
36 
37 #if defined(__WAVE__) && defined(BOOST_PHOENIX_CREATE_PREPROCESSED_FILES)
38 #pragma wave option(output: null)
39 #endif
40 
41 #endif
42 
43 #else
44 
45     template <typename T, BOOST_PHOENIX_typename_A>
46     inline
47     typename expression::new_<detail::target<T>, BOOST_PHOENIX_A>::type const
new_(BOOST_PHOENIX_A_const_ref_a)48     new_(BOOST_PHOENIX_A_const_ref_a)
49     {
50         return
51             expression::
52                 new_<detail::target<T>, BOOST_PHOENIX_A>::
53                     make(detail::target<T>(), BOOST_PHOENIX_a);
54     }
55 
56 #endif
57 
58 #endif // BOOST_PHOENIX_DONT_USE_PREPROCESSED_FILES
59