blob: e98050f68f870d2bac7327087f060d948c438113 [file] [log] [blame]
Jeff Thompson86b6d642013-10-17 15:01:56 -07001/*
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 <ndnboost/version.hpp>
16 * DESCRIPTION: Forward declares ndnboost::basic_regex<> and
17 * associated typedefs.
18 */
19
20#ifndef NDNBOOST_REGEX_FWD_HPP_INCLUDED
21#define NDNBOOST_REGEX_FWD_HPP_INCLUDED
22
23#ifndef NDNBOOST_REGEX_CONFIG_HPP
24#include <ndnboost/regex/config.hpp>
25#endif
26
27//
28// define NDNBOOST_REGEX_NO_FWD if this
29// header doesn't work!
30//
31#ifdef NDNBOOST_REGEX_NO_FWD
32# ifndef NDNBOOST_RE_REGEX_HPP
33# include <ndnboost/regex.hpp>
34# endif
35#else
36
37namespace ndnboost{
38
39template <class charT>
40class cpp_regex_traits;
41template <class charT>
42struct c_regex_traits;
43template <class charT>
44class w32_regex_traits;
45
46#ifdef NDNBOOST_REGEX_USE_WIN32_LOCALE
47template <class charT, class implementationT = w32_regex_traits<charT> >
48struct regex_traits;
49#elif defined(NDNBOOST_REGEX_USE_CPP_LOCALE)
50template <class charT, class implementationT = cpp_regex_traits<charT> >
51struct regex_traits;
52#else
53template <class charT, class implementationT = c_regex_traits<charT> >
54struct regex_traits;
55#endif
56
57template <class charT, class traits = regex_traits<charT> >
58class basic_regex;
59
60typedef basic_regex<char, regex_traits<char> > regex;
61#ifndef NDNBOOST_NO_WREGEX
62typedef basic_regex<wchar_t, regex_traits<wchar_t> > wregex;
63#endif
64
65} // namespace ndnboost
66
67#endif // NDNBOOST_REGEX_NO_FWD
68
69#endif
70
71
72
73