Provides streaming UTF8 validation functionality.
More...
#include <utf8_validator.hpp>
|
| validator () |
| Construct and initialize the validator.
|
|
bool | consume (uint8_t byte) |
| Advance the state of the validator with the next input byte.
|
|
template<typename iterator_type > |
bool | decode (iterator_type begin, iterator_type end) |
| Advance validator state with input from an iterator pair.
|
|
bool | complete () |
| Return whether the input sequence ended on a valid utf8 codepoint.
|
|
void | reset () |
| Reset the validator to decode another message.
|
|
Definition at line 81 of file utf8_validator.hpp.
◆ validator()
websocketpp::utf8_validator::validator::validator |
( |
| ) |
|
|
inline |
◆ complete()
bool websocketpp::utf8_validator::validator::complete |
( |
| ) |
|
|
inline |
- Returns
- Whether or not the input sequence ended on a valid codepoint.
Definition at line 124 of file utf8_validator.hpp.
124 {
125 return m_state == utf8_accept;
126 }
◆ consume()
bool websocketpp::utf8_validator::validator::consume |
( |
uint8_t | byte | ) |
|
|
inline |
- Parameters
-
byte | The byte to advance the validation state with |
- Returns
- Whether or not the byte resulted in a validation error.
Definition at line 91 of file utf8_validator.hpp.
91 {
93 return false;
94 }
95 return true;
96 }
uint32_t decode(uint32_t *state, uint32_t *codep, uint8_t byte)
Decode the next byte of a UTF8 sequence.
◆ decode()
template<typename iterator_type >
bool websocketpp::utf8_validator::validator::decode |
( |
iterator_type | begin, |
|
|
iterator_type | end ) |
|
inline |
- Parameters
-
begin | Input iterator to the start of the input range |
end | Input iterator to the end of the input range |
- Returns
- Whether or not decoding the bytes resulted in a validation error.
Definition at line 105 of file utf8_validator.hpp.
105 {
106 for (iterator_type it = begin; it != end; ++it) {
108 &m_state,
109 &m_codepoint,
111 );
112
113 if (result == utf8_reject) {
114 return false;
115 }
116 }
117 return true;
118 }
◆ reset()
void websocketpp::utf8_validator::validator::reset |
( |
| ) |
|
|
inline |
Definition at line 129 of file utf8_validator.hpp.
129 {
130 m_state = utf8_accept;
131 m_codepoint = 0;
132 }
The documentation for this class was generated from the following file: