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.cpp |
15 | * VERSION see <boost/version.hpp> |
16 | * DESCRIPTION: Declares boost::basic_regex<> and associated |
17 | * functions and classes. This header is the main |
18 | * entry point for the template regex code. |
19 | */ |
20 | |
21 | #ifndef BOOST_RE_REGEX_HPP_INCLUDED |
22 | #define BOOST_RE_REGEX_HPP_INCLUDED |
23 | |
24 | #ifdef __cplusplus |
25 | |
26 | // what follows is all C++ don't include in C builds!! |
27 | |
28 | #ifndef BOOST_REGEX_CONFIG_HPP |
29 | #include <boost/regex/config.hpp> |
30 | #endif |
31 | #ifndef BOOST_REGEX_WORKAROUND_HPP |
32 | #include <boost/regex/v4/regex_workaround.hpp> |
33 | #endif |
34 | |
35 | #ifndef BOOST_REGEX_FWD_HPP |
36 | #include <boost/regex_fwd.hpp> |
37 | #endif |
38 | #ifndef BOOST_REGEX_TRAITS_HPP |
39 | #include <boost/regex/regex_traits.hpp> |
40 | #endif |
41 | #ifndef BOOST_REGEX_RAW_BUFFER_HPP |
42 | #include <boost/regex/v4/error_type.hpp> |
43 | #endif |
44 | #ifndef BOOST_REGEX_V4_MATCH_FLAGS |
45 | #include <boost/regex/v4/match_flags.hpp> |
46 | #endif |
47 | #ifndef BOOST_REGEX_RAW_BUFFER_HPP |
48 | #include <boost/regex/v4/regex_raw_buffer.hpp> |
49 | #endif |
50 | #ifndef BOOST_RE_PAT_EXCEPT_HPP |
51 | #include <boost/regex/pattern_except.hpp> |
52 | #endif |
53 | |
54 | #ifndef BOOST_REGEX_V4_CHAR_REGEX_TRAITS_HPP |
55 | #include <boost/regex/v4/char_regex_traits.hpp> |
56 | #endif |
57 | #ifndef BOOST_REGEX_V4_STATES_HPP |
58 | #include <boost/regex/v4/states.hpp> |
59 | #endif |
60 | #ifndef BOOST_REGEX_V4_REGBASE_HPP |
61 | #include <boost/regex/v4/regbase.hpp> |
62 | #endif |
63 | #ifndef BOOST_REGEX_V4_ITERATOR_TRAITS_HPP |
64 | #include <boost/regex/v4/iterator_traits.hpp> |
65 | #endif |
66 | #ifndef BOOST_REGEX_V4_BASIC_REGEX_HPP |
67 | #include <boost/regex/v4/basic_regex.hpp> |
68 | #endif |
69 | #ifndef BOOST_REGEX_V4_BASIC_REGEX_CREATOR_HPP |
70 | #include <boost/regex/v4/basic_regex_creator.hpp> |
71 | #endif |
72 | #ifndef BOOST_REGEX_V4_BASIC_REGEX_PARSER_HPP |
73 | #include <boost/regex/v4/basic_regex_parser.hpp> |
74 | #endif |
75 | #ifndef BOOST_REGEX_V4_SUB_MATCH_HPP |
76 | #include <boost/regex/v4/sub_match.hpp> |
77 | #endif |
78 | #ifndef BOOST_REGEX_FORMAT_HPP |
79 | #include <boost/regex/v4/regex_format.hpp> |
80 | #endif |
81 | #ifndef BOOST_REGEX_V4_MATCH_RESULTS_HPP |
82 | #include <boost/regex/v4/match_results.hpp> |
83 | #endif |
84 | #ifndef BOOST_REGEX_V4_PROTECTED_CALL_HPP |
85 | #include <boost/regex/v4/protected_call.hpp> |
86 | #endif |
87 | #ifndef BOOST_REGEX_MATCHER_HPP |
88 | #include <boost/regex/v4/perl_matcher.hpp> |
89 | #endif |
90 | // |
91 | // template instances: |
92 | // |
93 | #define BOOST_REGEX_CHAR_T char |
94 | #ifdef BOOST_REGEX_NARROW_INSTANTIATE |
95 | # define BOOST_REGEX_INSTANTIATE |
96 | #endif |
97 | #include <boost/regex/v4/instances.hpp> |
98 | #undef BOOST_REGEX_CHAR_T |
99 | #ifdef BOOST_REGEX_INSTANTIATE |
100 | # undef BOOST_REGEX_INSTANTIATE |
101 | #endif |
102 | |
103 | #ifndef BOOST_NO_WREGEX |
104 | #define BOOST_REGEX_CHAR_T wchar_t |
105 | #ifdef BOOST_REGEX_WIDE_INSTANTIATE |
106 | # define BOOST_REGEX_INSTANTIATE |
107 | #endif |
108 | #include <boost/regex/v4/instances.hpp> |
109 | #undef BOOST_REGEX_CHAR_T |
110 | #ifdef BOOST_REGEX_INSTANTIATE |
111 | # undef BOOST_REGEX_INSTANTIATE |
112 | #endif |
113 | #endif |
114 | |
115 | #if !defined(BOOST_NO_WREGEX) && defined(BOOST_REGEX_HAS_OTHER_WCHAR_T) |
116 | #define BOOST_REGEX_CHAR_T unsigned short |
117 | #ifdef BOOST_REGEX_US_INSTANTIATE |
118 | # define BOOST_REGEX_INSTANTIATE |
119 | #endif |
120 | #include <boost/regex/v4/instances.hpp> |
121 | #undef BOOST_REGEX_CHAR_T |
122 | #ifdef BOOST_REGEX_INSTANTIATE |
123 | # undef BOOST_REGEX_INSTANTIATE |
124 | #endif |
125 | #endif |
126 | |
127 | |
128 | namespace boost{ |
129 | #ifdef BOOST_REGEX_NO_FWD |
130 | typedef basic_regex<char, regex_traits<char> > regex; |
131 | #ifndef BOOST_NO_WREGEX |
132 | typedef basic_regex<wchar_t, regex_traits<wchar_t> > wregex; |
133 | #endif |
134 | #endif |
135 | |
136 | typedef match_results<const char*> cmatch; |
137 | typedef match_results<std::string::const_iterator> smatch; |
138 | #ifndef BOOST_NO_WREGEX |
139 | typedef match_results<const wchar_t*> wcmatch; |
140 | typedef match_results<std::wstring::const_iterator> wsmatch; |
141 | #endif |
142 | |
143 | } // namespace boost |
144 | #ifndef BOOST_REGEX_MATCH_HPP |
145 | #include <boost/regex/v4/regex_match.hpp> |
146 | #endif |
147 | #ifndef BOOST_REGEX_V4_REGEX_SEARCH_HPP |
148 | #include <boost/regex/v4/regex_search.hpp> |
149 | #endif |
150 | #ifndef BOOST_REGEX_ITERATOR_HPP |
151 | #include <boost/regex/v4/regex_iterator.hpp> |
152 | #endif |
153 | #ifndef BOOST_REGEX_TOKEN_ITERATOR_HPP |
154 | #include <boost/regex/v4/regex_token_iterator.hpp> |
155 | #endif |
156 | #ifndef BOOST_REGEX_V4_REGEX_GREP_HPP |
157 | #include <boost/regex/v4/regex_grep.hpp> |
158 | #endif |
159 | #ifndef BOOST_REGEX_V4_REGEX_REPLACE_HPP |
160 | #include <boost/regex/v4/regex_replace.hpp> |
161 | #endif |
162 | #ifndef BOOST_REGEX_V4_REGEX_MERGE_HPP |
163 | #include <boost/regex/v4/regex_merge.hpp> |
164 | #endif |
165 | #ifndef BOOST_REGEX_SPLIT_HPP |
166 | #include <boost/regex/v4/regex_split.hpp> |
167 | #endif |
168 | |
169 | #endif // __cplusplus |
170 | |
171 | #endif // include |
172 | |
173 | |
174 | |
175 | |
176 | |
177 | |
178 | |
179 | |
180 | |
181 | |
182 | |
183 | |
184 | |
185 | |
186 | |
187 | |
188 | |
189 | |
190 | |
191 | |
192 | |
193 | |
194 | |
195 | |
196 | |
197 | |
198 | |
199 | |
200 | |
201 | |
202 | |
203 |