Mercurial > hg > vamp-build-and-test
annotate DEPENDENCIES/generic/include/boost/spirit/home/phoenix/object/delete.hpp @ 16:2665513ce2d3
Add boost headers
author | Chris Cannam |
---|---|
date | Tue, 05 Aug 2014 11:11:38 +0100 |
parents | |
children |
rev | line source |
---|---|
Chris@16 | 1 /*============================================================================= |
Chris@16 | 2 Copyright (c) 2001-2007 Joel de Guzman |
Chris@16 | 3 |
Chris@16 | 4 Distributed under the Boost Software License, Version 1.0. (See accompanying |
Chris@16 | 5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
Chris@16 | 6 ==============================================================================*/ |
Chris@16 | 7 #ifndef PHOENIX_OBJECT_DELETE_HPP |
Chris@16 | 8 #define PHOENIX_OBJECT_DELETE_HPP |
Chris@16 | 9 |
Chris@16 | 10 #include <boost/spirit/home/phoenix/core/compose.hpp> |
Chris@16 | 11 |
Chris@16 | 12 namespace boost { namespace phoenix |
Chris@16 | 13 { |
Chris@16 | 14 namespace impl |
Chris@16 | 15 { |
Chris@16 | 16 struct delete_eval |
Chris@16 | 17 { |
Chris@16 | 18 template <typename Env, typename P> |
Chris@16 | 19 struct result |
Chris@16 | 20 { |
Chris@16 | 21 typedef void type; |
Chris@16 | 22 }; |
Chris@16 | 23 |
Chris@16 | 24 template <typename Args, typename Env, typename P> |
Chris@16 | 25 static void |
Chris@16 | 26 eval(Env const& env, P& p) |
Chris@16 | 27 { |
Chris@16 | 28 delete p.eval(env); |
Chris@16 | 29 } |
Chris@16 | 30 }; |
Chris@16 | 31 } |
Chris@16 | 32 |
Chris@16 | 33 template <typename P> |
Chris@16 | 34 inline actor<typename as_composite<impl::delete_eval, P>::type> |
Chris@16 | 35 delete_(P const& p) |
Chris@16 | 36 { |
Chris@16 | 37 return compose<impl::delete_eval>(p); |
Chris@16 | 38 } |
Chris@16 | 39 }} |
Chris@16 | 40 |
Chris@16 | 41 #endif |