Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:53:40

0001 /*=============================================================================
0002     Boost.Wave: A Standard compliant C++ preprocessor library
0003 
0004     http://www.boost.org/
0005 
0006     Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
0007     Software License, Version 1.0. (See accompanying file
0008     LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0009 =============================================================================*/
0010 
0011 #if !defined(BOOST_CPP_LITERAL_GRAMMAR_GEN_HPP_67794A6C_468A_4AAB_A757_DEDDB182F5A0_INCLUDED)
0012 #define BOOST_CPP_LITERAL_GRAMMAR_GEN_HPP_67794A6C_468A_4AAB_A757_DEDDB182F5A0_INCLUDED
0013 
0014 #include <boost/wave/wave_config.hpp>
0015 #include <boost/wave/grammars/cpp_value_error.hpp>
0016 
0017 // this must occur after all of the includes and before any code appears
0018 #ifdef BOOST_HAS_ABI_HEADERS
0019 #include BOOST_ABI_PREFIX
0020 #endif
0021 
0022 // suppress warnings about dependent classes not being exported from the dll
0023 #ifdef BOOST_MSVC
0024 #pragma warning(push)
0025 #pragma warning(disable : 4251 4231 4660)
0026 #endif
0027 
0028 ///////////////////////////////////////////////////////////////////////////////
0029 namespace boost {
0030 namespace wave {
0031 namespace grammars {
0032 
0033 ///////////////////////////////////////////////////////////////////////////////
0034 //
0035 //  cpp_intlit_grammar_gen template class
0036 //
0037 //      This template helps separating the compilation of the intlit_grammar
0038 //      class from the compilation of the expression_grammar. This is done
0039 //      to safe compilation time.
0040 //
0041 ///////////////////////////////////////////////////////////////////////////////
0042 template <typename TokenT>
0043 struct BOOST_WAVE_DECL intlit_grammar_gen {
0044 
0045     static uint_literal_type evaluate(TokenT const &tok, bool &is_unsigned);
0046 };
0047 
0048 ///////////////////////////////////////////////////////////////////////////////
0049 //
0050 //  cpp_chlit_grammar_gen template class
0051 //
0052 //      This template helps separating the compilation of the chlit_grammar
0053 //      class from the compilation of the expression_grammar. This is done
0054 //      to safe compilation time.
0055 //
0056 ///////////////////////////////////////////////////////////////////////////////
0057 template <typename IntegralResult, typename TokenT>
0058 struct BOOST_WAVE_DECL chlit_grammar_gen {
0059 
0060     static IntegralResult evaluate(TokenT const &tok, value_error& status);
0061 };
0062 
0063 ///////////////////////////////////////////////////////////////////////////////
0064 }   //  namespace grammars
0065 }   //  namespace wave
0066 }   //  namespace boost
0067 
0068 #ifdef BOOST_MSVC
0069 #pragma warning(pop)
0070 #endif
0071 
0072 // the suffix header occurs after all of the code
0073 #ifdef BOOST_HAS_ABI_HEADERS
0074 #include BOOST_ABI_SUFFIX
0075 #endif
0076 
0077 #endif // !defined(BOOST_CPP_LITERAL_GRAMMAR_GEN_HPP_67794A6C_468A_4AAB_A757_DEDDB182F5A0_INCLUDED)