File indexing completed on 2025-01-18 09:53:27
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef BOOST_URL_GRAMMAR_ALPHA_CHARS_HPP
0011 #define BOOST_URL_GRAMMAR_ALPHA_CHARS_HPP
0012
0013 #include <boost/url/detail/config.hpp>
0014 #include <boost/url/grammar/detail/charset.hpp>
0015
0016 namespace boost {
0017 namespace urls {
0018 namespace grammar {
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045 #ifdef BOOST_URL_DOCS
0046 constexpr __implementation_defined__ alpha_chars;
0047 #else
0048 struct alpha_chars_t
0049 {
0050 constexpr
0051 alpha_chars_t() noexcept = default;
0052
0053 constexpr
0054 bool
0055 operator()(char c) const noexcept
0056 {
0057 return
0058 (c >= 'A' && c <= 'Z') ||
0059 (c >= 'a' && c <= 'z');
0060 }
0061
0062 #ifdef BOOST_URL_USE_SSE2
0063 char const*
0064 find_if(
0065 char const* first,
0066 char const* last) const noexcept
0067 {
0068 return detail::find_if_pred(
0069 *this, first, last);
0070 }
0071
0072 char const*
0073 find_if_not(
0074 char const* first,
0075 char const* last) const noexcept
0076 {
0077 return detail::find_if_not_pred(
0078 *this, first, last);
0079 }
0080 #endif
0081 };
0082
0083
0084
0085
0086
0087
0088 constexpr alpha_chars_t alpha_chars{};
0089 #endif
0090
0091 }
0092 }
0093 }
0094
0095 #endif