aboutsummaryrefslogtreecommitdiff
path: root/cutl/details/boost/regex/src/cpp_regex_traits.cxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2020-12-16 20:29:05 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2021-02-24 16:40:04 +0300
commit8e761289a2446367267c6c0d9a26e734f0f78306 (patch)
treefb495d8c18801f271d124ee48731f10df396ca89 /cutl/details/boost/regex/src/cpp_regex_traits.cxx
parent4c8104756b92b9fa16b3a725e8a6aa620dfd606e (diff)
Get rid of legacy build systems and rename cutl/ to libcutl/
Diffstat (limited to 'cutl/details/boost/regex/src/cpp_regex_traits.cxx')
-rw-r--r--cutl/details/boost/regex/src/cpp_regex_traits.cxx117
1 files changed, 0 insertions, 117 deletions
diff --git a/cutl/details/boost/regex/src/cpp_regex_traits.cxx b/cutl/details/boost/regex/src/cpp_regex_traits.cxx
deleted file mode 100644
index 7124191..0000000
--- a/cutl/details/boost/regex/src/cpp_regex_traits.cxx
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- *
- * Copyright (c) 2004
- * John Maddock
- *
- * Use, modification and distribution are subject to the
- * Boost Software License, Version 1.0. (See accompanying file
- * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- *
- */
-
- /*
- * LOCATION: see http://www.boost.org for most recent version.
- * FILE cpp_regex_traits.cpp
- * VERSION see <cutl/details/boost/version.hpp>
- * DESCRIPTION: Implements cpp_regex_traits<char> (and associated helper classes).
- */
-
-#define BOOST_REGEX_SOURCE
-#include <cutl/details/boost/config.hpp>
-#ifndef BOOST_NO_STD_LOCALE
-#include <cutl/details/boost/regex/regex_traits.hpp>
-#include <cutl/details/boost/regex/pattern_except.hpp>
-
-#ifdef BOOST_NO_STDC_NAMESPACE
-namespace std{
- using ::memset;
-}
-#endif
-
-namespace cutl_details_boost{ namespace re_detail{
-
-void cpp_regex_traits_char_layer<char>::init()
-{
- // we need to start by initialising our syntax map so we know which
- // character is used for which purpose:
- std::memset(m_char_map, 0, sizeof(m_char_map));
-#ifndef BOOST_NO_STD_MESSAGES
-#ifndef __IBMCPP__
- std::messages<char>::catalog cat = static_cast<std::messages<char>::catalog>(-1);
-#else
- std::messages<char>::catalog cat = reinterpret_cast<std::messages<char>::catalog>(-1);
-#endif
- std::string cat_name(cpp_regex_traits<char>::get_catalog_name());
- if(cat_name.size() && (m_pmessages != 0))
- {
- cat = this->m_pmessages->open(
- cat_name,
- this->m_locale);
- if((int)cat < 0)
- {
- std::string m("Unable to open message catalog: ");
- std::runtime_error err(m + cat_name);
- cutl_details_boost::re_detail::raise_runtime_error(err);
- }
- }
- //
- // if we have a valid catalog then load our messages:
- //
- if((int)cat >= 0)
- {
-#ifndef BOOST_NO_EXCEPTIONS
- try{
-#endif
- for(regex_constants::syntax_type i = 1; i < regex_constants::syntax_max; ++i)
- {
- string_type mss = this->m_pmessages->get(cat, 0, i, get_default_syntax(i));
- for(string_type::size_type j = 0; j < mss.size(); ++j)
- {
- m_char_map[static_cast<unsigned char>(mss[j])] = i;
- }
- }
- this->m_pmessages->close(cat);
-#ifndef BOOST_NO_EXCEPTIONS
- }
- catch(...)
- {
- this->m_pmessages->close(cat);
- throw;
- }
-#endif
- }
- else
- {
-#endif
- for(regex_constants::syntax_type j = 1; j < regex_constants::syntax_max; ++j)
- {
- const char* ptr = get_default_syntax(j);
- while(ptr && *ptr)
- {
- m_char_map[static_cast<unsigned char>(*ptr)] = j;
- ++ptr;
- }
- }
-#ifndef BOOST_NO_STD_MESSAGES
- }
-#endif
- //
- // finish off by calculating our escape types:
- //
- unsigned char i = 'A';
- do
- {
- if(m_char_map[i] == 0)
- {
- if(this->m_pctype->is(std::ctype_base::lower, i))
- m_char_map[i] = regex_constants::escape_type_class;
- else if(this->m_pctype->is(std::ctype_base::upper, i))
- m_char_map[i] = regex_constants::escape_type_not_class;
- }
- }while(0xFF != i++);
-}
-
-} // re_detail
-} // boost
-#endif
-