1 /*============================================================================= 2 Boost.Wave: A Standard compliant C++ preprocessor library 3 Example: real_positions 4 5 Explicit instantiation of the cpp_expression_grammar parsing function 6 7 http://www.boost.org/ 8 9 Copyright (c) 2001-2010 Hartmut Kaiser. Distributed under the Boost 10 Software License, Version 1.0. (See accompanying file 11 LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 12 =============================================================================*/ 13 14 #include <boost/wave/wave_config.hpp> 15 16 #if BOOST_WAVE_SEPARATE_GRAMMAR_INSTANTIATION != 0 17 18 #include <string> 19 20 #include <boost/wave/token_ids.hpp> 21 22 #include "real_position_token.hpp" // token class 23 #include <boost/wave/cpplexer/cpp_lex_iterator.hpp> // lexer type 24 25 #include <boost/wave/grammars/cpp_expression_grammar.hpp> 26 27 /////////////////////////////////////////////////////////////////////////////// 28 // 29 // Explicit instantiation of the expression_grammar_gen template with the 30 // correct token type. This instantiates the corresponding parse function, 31 // which in turn instantiates the expression_grammar object (see 32 // wave/grammars/cpp_expression_grammar.hpp) 33 // 34 /////////////////////////////////////////////////////////////////////////////// 35 36 typedef lex_token<> token_type; 37 38 template struct boost::wave::grammars::expression_grammar_gen<token_type>; 39 40 #endif // #if BOOST_WAVE_SEPARATE_GRAMMAR_INSTANTIATION != 0 41 42