1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/ossrv/ossrv_pub/boost_apis/boost/regex/v4/instances.hpp Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,206 @@
1.4 +/*
1.5 + *
1.6 + * Copyright (c) 1998-2002
1.7 + * John Maddock
1.8 + *
1.9 + * Use, modification and distribution are subject to the
1.10 + * Boost Software License, Version 1.0. (See accompanying file
1.11 + * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
1.12 + *
1.13 + */
1.14 +
1.15 + /*
1.16 + * LOCATION: see http://www.boost.org for most recent version.
1.17 + * FILE instances.cpp
1.18 + * VERSION see <boost/version.hpp>
1.19 + * DESCRIPTION: Defines those template instances that are placed in the
1.20 + * library rather than in the users object files.
1.21 + */
1.22 +
1.23 +//
1.24 +// note no include guard, we may include this multiple times:
1.25 +//
1.26 +#ifndef BOOST_REGEX_NO_EXTERNAL_TEMPLATES
1.27 +
1.28 +namespace boost{
1.29 +
1.30 +//
1.31 +// this header can be included multiple times, each time with
1.32 +// a different character type, BOOST_REGEX_CHAR_T must be defined
1.33 +// first:
1.34 +//
1.35 +#ifndef BOOST_REGEX_CHAR_T
1.36 +# error "BOOST_REGEX_CHAR_T not defined"
1.37 +#endif
1.38 +
1.39 +#ifndef BOOST_REGEX_TRAITS_T
1.40 +# define BOOST_REGEX_TRAITS_T , boost::regex_traits<BOOST_REGEX_CHAR_T >
1.41 +#endif
1.42 +
1.43 +//
1.44 +// what follows is compiler specific:
1.45 +//
1.46 +
1.47 +#if defined(__BORLANDC__) && (__BORLANDC__ < 0x600)
1.48 +
1.49 +#ifdef BOOST_HAS_ABI_HEADERS
1.50 +# include BOOST_ABI_PREFIX
1.51 +#endif
1.52 +
1.53 +# ifndef BOOST_REGEX_INSTANTIATE
1.54 +# pragma option push -Jgx
1.55 +# endif
1.56 +
1.57 +template class BOOST_REGEX_DECL basic_regex< BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >;
1.58 +template class BOOST_REGEX_DECL match_results< const BOOST_REGEX_CHAR_T* >;
1.59 +#ifndef BOOST_NO_STD_ALLOCATOR
1.60 +template class BOOST_REGEX_DECL ::boost::re_detail::perl_matcher<BOOST_REGEX_CHAR_T const *, match_results< const BOOST_REGEX_CHAR_T* >::allocator_type BOOST_REGEX_TRAITS_T >;
1.61 +#endif
1.62 +
1.63 +# ifndef BOOST_REGEX_INSTANTIATE
1.64 +# pragma option pop
1.65 +# endif
1.66 +
1.67 +#ifdef BOOST_HAS_ABI_HEADERS
1.68 +# include BOOST_ABI_SUFFIX
1.69 +#endif
1.70 +
1.71 +#elif defined(BOOST_MSVC) || defined(__ICL)
1.72 +
1.73 +# ifndef BOOST_REGEX_INSTANTIATE
1.74 +# ifdef __GNUC__
1.75 +# define template __extension__ extern template
1.76 +# else
1.77 +# define template extern template
1.78 +# endif
1.79 +# endif
1.80 +
1.81 +# ifdef BOOST_MSVC
1.82 +# pragma warning(push)
1.83 +# pragma warning(disable : 4251 4231 4660)
1.84 +# endif
1.85 +
1.86 +template class BOOST_REGEX_DECL basic_regex< BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >;
1.87 +
1.88 +#if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
1.89 +template class BOOST_REGEX_DECL match_results< const BOOST_REGEX_CHAR_T* >;
1.90 +#endif
1.91 +#ifndef BOOST_NO_STD_ALLOCATOR
1.92 +template class BOOST_REGEX_DECL ::boost::re_detail::perl_matcher<BOOST_REGEX_CHAR_T const *, match_results< const BOOST_REGEX_CHAR_T* >::allocator_type BOOST_REGEX_TRAITS_T >;
1.93 +#endif
1.94 +#if !(defined(BOOST_DINKUMWARE_STDLIB) && (BOOST_DINKUMWARE_STDLIB <= 1))\
1.95 + && !(defined(BOOST_INTEL_CXX_VERSION) && (BOOST_INTEL_CXX_VERSION <= 800))\
1.96 + && !(defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION))\
1.97 + && !defined(BOOST_REGEX_ICU_INSTANCES)
1.98 +#if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
1.99 +template class BOOST_REGEX_DECL match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >;
1.100 +#endif
1.101 +#ifndef BOOST_NO_STD_ALLOCATOR
1.102 +template class BOOST_REGEX_DECL ::boost::re_detail::perl_matcher< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator, match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >::allocator_type, boost::regex_traits<BOOST_REGEX_CHAR_T > >;
1.103 +#endif
1.104 +#endif
1.105 +
1.106 +
1.107 +# ifdef BOOST_MSVC
1.108 +# pragma warning(pop)
1.109 +# endif
1.110 +
1.111 +# ifdef template
1.112 +# undef template
1.113 +# endif
1.114 +
1.115 +#elif (defined(__GNUC__) && (__GNUC__ >= 3))
1.116 +
1.117 +# ifndef BOOST_REGEX_INSTANTIATE
1.118 +# define template __extension__ extern template
1.119 +# endif
1.120 +
1.121 +#if !defined(BOOST_NO_STD_LOCALE) && !defined(BOOST_REGEX_ICU_INSTANCES)
1.122 +namespace re_detail{
1.123 +template BOOST_REGEX_DECL
1.124 +std::locale cpp_regex_traits_base<BOOST_REGEX_CHAR_T>::imbue(const std::locale& l);
1.125 +
1.126 +template BOOST_REGEX_DECL
1.127 +cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::string_type
1.128 + cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::transform_primary(const BOOST_REGEX_CHAR_T* p1, const BOOST_REGEX_CHAR_T* p2) const;
1.129 +template BOOST_REGEX_DECL
1.130 +cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::string_type
1.131 + cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::transform(const BOOST_REGEX_CHAR_T* p1, const BOOST_REGEX_CHAR_T* p2) const;
1.132 +template BOOST_REGEX_DECL
1.133 +cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::string_type
1.134 + cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::lookup_collatename(const BOOST_REGEX_CHAR_T* p1, const BOOST_REGEX_CHAR_T* p2) const;
1.135 +template BOOST_REGEX_DECL
1.136 +void cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::init();
1.137 +template BOOST_REGEX_DECL
1.138 +cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::char_class_type
1.139 + cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::lookup_classname_imp(const BOOST_REGEX_CHAR_T* p1, const BOOST_REGEX_CHAR_T* p2) const;
1.140 +#ifdef BOOST_REGEX_BUGGY_CTYPE_FACET
1.141 +template BOOST_REGEX_DECL
1.142 +bool cpp_regex_traits_implementation<BOOST_REGEX_CHAR_T>::isctype(const BOOST_REGEX_CHAR_T c, char_class_type mask) const;
1.143 +#endif
1.144 +} // namespace
1.145 +template BOOST_REGEX_DECL
1.146 +int cpp_regex_traits<BOOST_REGEX_CHAR_T>::toi(const BOOST_REGEX_CHAR_T*& first, const BOOST_REGEX_CHAR_T* last, int radix)const;
1.147 +template BOOST_REGEX_DECL
1.148 +std::string cpp_regex_traits<BOOST_REGEX_CHAR_T>::catalog_name(const std::string& name);
1.149 +template BOOST_REGEX_DECL
1.150 +std::string& cpp_regex_traits<BOOST_REGEX_CHAR_T>::get_catalog_name_inst();
1.151 +template BOOST_REGEX_DECL
1.152 +std::string cpp_regex_traits<BOOST_REGEX_CHAR_T>::get_catalog_name();
1.153 +#ifdef BOOST_HAS_THREADS
1.154 +template BOOST_REGEX_DECL
1.155 +static_mutex& cpp_regex_traits<BOOST_REGEX_CHAR_T>::get_mutex_inst();
1.156 +#endif
1.157 +#endif
1.158 +
1.159 +template BOOST_REGEX_DECL basic_regex<BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >&
1.160 + basic_regex<BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >::do_assign(
1.161 + const BOOST_REGEX_CHAR_T* p1,
1.162 + const BOOST_REGEX_CHAR_T* p2,
1.163 + flag_type f);
1.164 +template BOOST_REGEX_DECL basic_regex<BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >::locale_type BOOST_REGEX_CALL
1.165 + basic_regex<BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >::imbue(locale_type l);
1.166 +
1.167 +template BOOST_REGEX_DECL void BOOST_REGEX_CALL
1.168 + match_results<const BOOST_REGEX_CHAR_T*>::maybe_assign(
1.169 + const match_results<const BOOST_REGEX_CHAR_T*>& m);
1.170 +
1.171 +namespace re_detail{
1.172 +template BOOST_REGEX_DECL void perl_matcher<BOOST_REGEX_CHAR_T const *, match_results< const BOOST_REGEX_CHAR_T* >::allocator_type BOOST_REGEX_TRAITS_T >::construct_init(
1.173 + const basic_regex<BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >& e, match_flag_type f);
1.174 +template BOOST_REGEX_DECL bool perl_matcher<BOOST_REGEX_CHAR_T const *, match_results< const BOOST_REGEX_CHAR_T* >::allocator_type BOOST_REGEX_TRAITS_T >::match();
1.175 +template BOOST_REGEX_DECL bool perl_matcher<BOOST_REGEX_CHAR_T const *, match_results< const BOOST_REGEX_CHAR_T* >::allocator_type BOOST_REGEX_TRAITS_T >::find();
1.176 +} // namespace
1.177 +
1.178 +#if (defined(__GLIBCPP__) || defined(__GLIBCXX__)) \
1.179 + && !defined(BOOST_REGEX_ICU_INSTANCES)\
1.180 + && !defined(__SGI_STL_PORT)\
1.181 + && !defined(_STLPORT_VERSION)
1.182 +// std:basic_string<>::const_iterator instances as well:
1.183 +template BOOST_REGEX_DECL void BOOST_REGEX_CALL
1.184 + match_results<std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator>::maybe_assign(
1.185 + const match_results<std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator>& m);
1.186 +
1.187 +namespace re_detail{
1.188 +template BOOST_REGEX_DECL void perl_matcher<std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator, match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >::allocator_type, boost::regex_traits<BOOST_REGEX_CHAR_T > >::construct_init(
1.189 + const basic_regex<BOOST_REGEX_CHAR_T>& e, match_flag_type f);
1.190 +template BOOST_REGEX_DECL bool perl_matcher<std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator, match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >::allocator_type, boost::regex_traits<BOOST_REGEX_CHAR_T > >::match();
1.191 +template BOOST_REGEX_DECL bool perl_matcher<std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator, match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >::allocator_type, boost::regex_traits<BOOST_REGEX_CHAR_T > >::find();
1.192 +} // namespace
1.193 +#endif
1.194 +
1.195 +# ifdef template
1.196 +# undef template
1.197 +# endif
1.198 +
1.199 +
1.200 +#endif
1.201 +
1.202 +} // namespace boost
1.203 +
1.204 +#endif // BOOST_REGEX_NO_EXTERNAL_TEMPLATES
1.205 +
1.206 +
1.207 +
1.208 +
1.209 +