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(SPIRIT_X3_RAW_APRIL_9_2007_0912AM)
-#define SPIRIT_X3_RAW_APRIL_9_2007_0912AM
+#ifndef BOOST_SPIRIT_X3_DIRECTIVE_RAW_HPP
+#define BOOST_SPIRIT_X3_DIRECTIVE_RAW_HPP
#include <boost/spirit/home/x3/core/skip_over.hpp>
#include <boost/spirit/home/x3/core/parser.hpp>
static bool const handles_container = Subject::handles_container;
typedef Subject subject_type;
- raw_directive(Subject const& subject)
+ constexpr raw_directive(Subject const& subject)
: base_type(subject) {}
template <typename Iterator, typename Context
struct raw_gen
{
template <typename Subject>
- raw_directive<typename extension::as_parser<Subject>::value_type>
+ constexpr raw_directive<typename extension::as_parser<Subject>::value_type>
operator[](Subject const& subject) const
{
return { as_parser(subject) };
}
};
- auto const raw = raw_gen{};
+ constexpr auto raw = raw_gen{};
namespace traits
{