File indexing completed on 2025-09-17 08:52:40
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 namespace implementation_defined {
0049 struct alpha_chars_t
0050 {
0051 constexpr
0052 alpha_chars_t() noexcept = default;
0053
0054 constexpr
0055 bool
0056 operator()(char c) const noexcept
0057 {
0058 return
0059 (c >= 'A' && c <= 'Z') ||
0060 (c >= 'a' && c <= 'z');
0061 }
0062
0063 #ifdef BOOST_URL_USE_SSE2
0064 char const*
0065 find_if(
0066 char const* first,
0067 char const* last) const noexcept
0068 {
0069 return detail::find_if_pred(
0070 *this, first, last);
0071 }
0072
0073 char const*
0074 find_if_not(
0075 char const* first,
0076 char const* last) const noexcept
0077 {
0078 return detail::find_if_not_pred(
0079 *this, first, last);
0080 }
0081 #endif
0082 };
0083 }
0084
0085
0086
0087
0088
0089
0090
0091
0092
0093
0094
0095
0096
0097
0098
0099
0100
0101
0102
0103
0104
0105
0106
0107
0108
0109
0110 constexpr implementation_defined::alpha_chars_t alpha_chars{};
0111 #endif
0112
0113 }
0114 }
0115 }
0116
0117 #endif