summaryrefslogtreecommitdiff
path: root/boost/spirit/home/qi/what.hpp
diff options
context:
space:
mode:
authorAnas Nashif <anas.nashif@intel.com>2012-10-30 12:57:26 -0700
committerAnas Nashif <anas.nashif@intel.com>2012-10-30 12:57:26 -0700
commit1a78a62555be32868418fe52f8e330c9d0f95d5a (patch)
treed3765a80e7d3b9640ec2e930743630cd6b9fce2b /boost/spirit/home/qi/what.hpp
downloadboost-1a78a62555be32868418fe52f8e330c9d0f95d5a.tar.gz
boost-1a78a62555be32868418fe52f8e330c9d0f95d5a.tar.bz2
boost-1a78a62555be32868418fe52f8e330c9d0f95d5a.zip
Imported Upstream version 1.49.0upstream/1.49.0
Diffstat (limited to 'boost/spirit/home/qi/what.hpp')
-rw-r--r--boost/spirit/home/qi/what.hpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/boost/spirit/home/qi/what.hpp b/boost/spirit/home/qi/what.hpp
new file mode 100644
index 0000000000..ae26b7bed1
--- /dev/null
+++ b/boost/spirit/home/qi/what.hpp
@@ -0,0 +1,33 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+=============================================================================*/
+#if !defined(BOOST_SPIRIT_WHAT_APRIL_21_2007_0732AM)
+#define BOOST_SPIRIT_WHAT_APRIL_21_2007_0732AM
+
+#if defined(_MSC_VER)
+#pragma once
+#endif
+
+#include <boost/mpl/assert.hpp>
+#include <boost/spirit/home/support/info.hpp>
+#include <boost/spirit/home/qi/meta_compiler.hpp>
+
+namespace boost { namespace spirit { namespace qi
+{
+ template <typename Expr>
+ inline info what(Expr const& expr)
+ {
+ // Report invalid expression error as early as possible.
+ // If you got an error_expr_is_not_convertible_to_a_parser
+ // error message here, then the expression (expr) is not a
+ // valid spirit qi expression.
+ BOOST_SPIRIT_ASSERT_MATCH(qi::domain, Expr);
+ return compile<qi::domain>(expr).what(unused);
+ }
+}}}
+
+#endif
+