Alexandria 2.31.0
SDC-CH common library for the Euclid project
Loading...
Searching...
No Matches
RegexHelper.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2012-2022 Euclid Science Ground Segment
3 *
4 * This library is free software; you can redistribute it and/or modify it under
5 * the terms of the GNU Lesser General Public License as published by the Free
6 * Software Foundation; either version 3.0 of the License, or (at your option)
7 * any later version.
8 *
9 * This library is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12 * details.
13 *
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with this library; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17 */
18
19#ifndef _ALEXANDRIAKERNEL_REGEX_HELPER_H
20#define _ALEXANDRIAKERNEL_REGEX_HELPER_H
21
22// The std regex library is not fully implemented in GCC 4.8.
23#if !defined(__llvm__) && !defined(__INTEL_COMPILER) && defined(__GNUC__) && __GNUC__ == 4 && __GNUC_MINOR__ <= 8
24#include <boost/regex.hpp>
25
26namespace Euclid {
27namespace regex {
28using boost::match_results;
29using boost::regex;
30using boost::regex_match;
31using boost::regex_search;
32using boost::smatch;
33} // namespace regex
34} // namespace Euclid
35#else
36#include <regex>
37
38namespace Euclid {
39namespace regex {
41using std::regex;
44using std::smatch;
45} // namespace regex
46} // namespace Euclid
47#endif
48
49#endif // _ALEXANDRIAKERNEL_REGEX_HELPER_H
T regex_match(T... args)
T regex_search(T... args)