// spirit implementation detail, but since classic is no longer under
// development, it won't change. And spirit 2 won't require such a hack.
- typedef cl::scanner<parse_iterator, cl::scanner_policies <
- cl::iteration_policy, cl::match_policy, cl::action_policy> > scanner;
+ typedef cl::scanner<
+ parse_iterator,
+ cl::scanner_policies<
+ cl::iteration_policy,
+ cl::match_policy,
+ cl::action_policy> >
+ scanner;
template <typename Scanner>
struct Scanner_must_be_the_quickbook_scanner_typedef;
- template <>
- struct Scanner_must_be_the_quickbook_scanner_typedef<scanner> {};
+ template <> struct Scanner_must_be_the_quickbook_scanner_typedef<scanner>
+ {
+ };
- struct grammar
- : public cl::grammar<grammar>
+ struct grammar : public cl::grammar<grammar>
{
grammar(cl::rule<scanner> const& start_rule_, char const* /* name */)
- : start_rule(start_rule_) {}
+ : start_rule(start_rule_)
+ {
+ }
template <typename Scanner>
- struct definition :
- Scanner_must_be_the_quickbook_scanner_typedef<Scanner>
+ struct definition
+ : Scanner_must_be_the_quickbook_scanner_typedef<Scanner>
{
definition(grammar const& self) : start_rule(self.start_rule) {}
cl::rule<scanner> const& start() const { return start_rule; }
struct quickbook_grammar
{
- public:
+ public:
struct impl;
- private:
+ private:
boost::scoped_ptr<impl> impl_;
- public:
+ public:
grammar command_line_macro;
grammar inline_phrase;
grammar phrase_start;