blob: acc13a98a0b3ef57066755d17b54a3520e1826c1 [file] [log] [blame]
/*=============================================================================
Copyright (c) 2004 Joao Abecasis
http://spirit.sourceforge.net/
Use, modification and distribution is subject to 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)
=============================================================================*/
#include <boost/spirit/include/classic_core.hpp>
#include <boost/spirit/include/classic_closure.hpp>
#include <boost/spirit/include/classic_ast.hpp>
#include <boost/spirit/include/classic_parse_tree.hpp>
using namespace BOOST_SPIRIT_CLASSIC_NS;
struct test_closure : public closure<test_closure, int>
{
member1 value;
};
struct test_grammar : public grammar<test_grammar>
{
template <typename ScannerT>
struct definition
{
definition(const test_grammar&)
{
}
rule<ScannerT, test_closure::context_t> const & start() const
{
return first;
}
rule<ScannerT, test_closure::context_t> first;
};
};
int main()
{
parse("abcd", test_grammar());
pt_parse("abcd", test_grammar());
ast_parse("abcd", test_grammar());
}