1 /* 2 * 3 * Copyright (c) 1998-2002 4 * John Maddock 5 * 6 * Use, modification and distribution are subject to the 7 * Boost Software License, Version 1.0. (See accompanying file 8 * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 9 * 10 */ 11 12 /* 13 * LOCATION: see http://www.boost.org for most recent version. 14 * FILE regex_fwd.cpp 15 * VERSION see <boost/version.hpp> 16 * DESCRIPTION: Forward declares boost::basic_regex<> and 17 * associated typedefs. 18 */ 19 20 #ifndef BOOST_REGEX_FWD_HPP_INCLUDED 21 #define BOOST_REGEX_FWD_HPP_INCLUDED 22 23 #ifndef BOOST_REGEX_CONFIG_HPP 24 #include <boost/regex/config.hpp> 25 #endif 26 27 // 28 // define BOOST_REGEX_NO_FWD if this 29 // header doesn't work! 30 // 31 #ifdef BOOST_REGEX_NO_FWD 32 # ifndef BOOST_RE_REGEX_HPP 33 # include <boost/regex.hpp> 34 # endif 35 #else 36 37 namespace boost{ 38 39 template <class charT> 40 class cpp_regex_traits; 41 template <class charT> 42 struct c_regex_traits; 43 template <class charT> 44 class w32_regex_traits; 45 46 #ifdef BOOST_REGEX_USE_WIN32_LOCALE 47 template <class charT, class implementationT = w32_regex_traits<charT> > 48 struct regex_traits; 49 #elif defined(BOOST_REGEX_USE_CPP_LOCALE) 50 template <class charT, class implementationT = cpp_regex_traits<charT> > 51 struct regex_traits; 52 #else 53 template <class charT, class implementationT = c_regex_traits<charT> > 54 struct regex_traits; 55 #endif 56 57 template <class charT, class traits = regex_traits<charT> > 58 class basic_regex; 59 60 typedef basic_regex<char, regex_traits<char> > regex; 61 #ifndef BOOST_NO_WREGEX 62 typedef basic_regex<wchar_t, regex_traits<wchar_t> > wregex; 63 #endif 64 65 } // namespace boost 66 67 #endif // BOOST_REGEX_NO_FWD 68 69 #endif 70 71 72 73 74